Commit Graph

50 Commits

Author SHA1 Message Date
Carl Schwan
65e769a861 refactor: Apply comments
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:50:46 +01:00
Carl Schwan
7b6078875b refactor: Run rector on lib/private
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:50:18 +01:00
Joas Schilling
60bfab2421 fix(db): Fix Oracle JSON handling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:33 +01:00
Joas Schilling
4676b12a32 fix(db): Fix comparing JSON data in MySQL and MariaDB
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:32 +01:00
Joas Schilling
fb8caecbb0 fix(db): Fix JSON handling in WHERE statements for postgres
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:31 +01:00
Ferdinand Thiessen
5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Ferdinand Thiessen
db94e10af0 fix: Prevent breaking change in IQueryBuilder
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:44 +02:00
Ferdinand Thiessen
e314d52118 fix: Adjust parameter type usage and add SQLite support
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:44 +02:00
Daniel Kesselberg
af6de04e9e style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Robin Appelman
16c184e2cb fix: cast to bigint on postgresql
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-23 14:41:13 +02:00
Joas Schilling
eeb6ddb176 fix(db): Deprecate IExpressionBuilder::or() and IExpressionBuilder::and() without parameters
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:16 +02:00
Robin Appelman
d81d59e9c3 feat: allow inspecting the parts of the composite expression builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-12 17:01:36 +02:00
Andy Scherzinger
dae7c159f7 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
Julius Härtl
86dc766276 Cast datetime columns in sqlite before comparing
Move the logic to prepare a column to the parent ExpressionBuilder so
that it can be reused for OCI and sqlite

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-12-29 10:36:59 +01:00
Côme Chilliet
f5c361cf44 composer run cs:fix
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +01:00
Robin Appelman
9b52663a81 Revert "make expression build return IQueryFunction instead of string"
This reverts commit 813b50ed42.

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-16 12:07:09 +02:00
Robin Appelman
813b50ed42 make expression build return IQueryFunction instead of string
this allows passing the expressions to further expressions without them being escaped as column names

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-02 15:52:08 +02:00
Joas Schilling
eebed2c434 Fix psalm complaint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 17:32:07 +01:00
Julius Härtl
a169ca306e Explicitly cast char in the query builder
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-01-04 16:53:00 +01:00
Côme Chilliet
18a91f02fa Fix default value for $type in OC\DB\QueryBuilder\ExpressionBuilder\ExpressionBuilder::literal
This fixes PHP errors about passing null to PDO::quote second parameter.
We may want to change IExpressionBuilder as well?

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:29:02 +01:00
Arthur Schiwon
ce283c12b6 make it possible to override the default collation
- allows admins to configure it for edge cases like accent sensitivity

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-01 11:57:47 +02:00
Joas Schilling
aae16c21e6 Allow casting query functions as well
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-07 14:20:24 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Roeland Jago Douma
4bdf9f5849 Type the experssionbuilders
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 10:44:09 +01:00
Christoph Wurst
8b64e92b92 Bump doctrine/dbal from 2.12.0 to 3.0.0
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 11:45:19 +01:00
Christoph Wurst
d89a75be0b Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
Joas Schilling
cb8bef1f37 Fix iLike() falsely turning escaped % and _ into wildcards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 16:22:13 +01:00
Joas Schilling
cfc35fa49a Fix casting to integer on Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 08:38:08 +01:00
Daniel Kesselberg
8fdb74bdd5 Update signature for in/notIn
$y is always passed to quoteColumnName hence ILiteral|IParameter|IQueryFunction are supported.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-02 19:09:28 +02:00
Daniel Kesselberg
d14c971ad6 Update signature for like/notLike/in/notIn
$x is always passed to quoteColumnName hence ILiteral|IParameter|IQueryFunction are supported.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-02 18:59:53 +02:00
Roeland Jago Douma
cbcf072b23 Revert "Make sure MySQL is not saying 'this' = 'this ' is true" 2020-04-15 23:49:16 +02:00
Joas Schilling
16e9bf2309 Make sure MySQL is not saying 'this' = 'this ' is true
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-15 09:14:12 +02:00
Christoph Wurst
caff1023ea Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst
41b5e5923a Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +02:00
Christoph Wurst
5bf3d1bb38 Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Robin Appelman
bfd539017f add casting to string for postgresql query builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-14 14:19:10 +01:00
Roeland Jago Douma
46c195b58b Made IExpressionBuilder varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:35:09 +01:00
Robin Appelman
42b3aa3a0a reuse query builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-01-12 13:57:55 +01:00
Robin Appelman
aad01894e3 refactor user searching
add additional user searching tests

Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-20 15:51:37 +01:00
Morris Jobke
0eebff152a Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Joas Schilling
78412fda9c Add a method to compare empty strings with an expression
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-02 09:50:41 +02:00
Joas Schilling
bb58667511 Fix ILIKE regex for oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-02 09:48:16 +02:00
Morris Jobke
c54a59d51e Remove unused use statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-22 19:23:31 -05:00
Robin Appelman
4125bdeb93 fix licence headers
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-30 11:14:52 +02:00
Robin Appelman
a65652fc1e add support for escaping like parameters when using the query builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-30 11:09:22 +02:00
Joas Schilling
4128a08333 Add bitwise AND and OR to the expression builder
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-01-05 14:30:25 +01:00
Joas Schilling
64c9ef96c4 Fix like queries in the QueryBuilder
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-19 00:15:01 +02:00
Joas Schilling
0215b004da Update with robin 2016-07-21 18:13:58 +02:00
Joas Schilling
ba87db3fcc Fix others 2016-07-21 18:13:57 +02:00
Roeland Jago Douma
d09f835dca Move \OC\DB to PSR-4
Besides the statement wrapper that is moved to the legacy folder
(namepsace of shame folder)
2016-04-15 19:46:34 +02:00