Skip to content

Commit 6357713

Browse files
authored
Refactor test of columns (#317)
1 parent d119db7 commit 6357713

File tree

4 files changed

+138
-269
lines changed

4 files changed

+138
-269
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
- Bug #285: Fix `DMLQueryBuilder::insertBatch()` method (@Tigrov)
2020
- Enh #283: Refactor `Dsn` class (@Tigrov)
2121
- Enh #286: Use constructor to create columns and initialize properties (@Tigrov)
22-
- Enh #288: Refactor `Schema::findColumns()` method (@Tigrov)
22+
- Enh #288, #317: Refactor `Schema::findColumns()` method (@Tigrov)
2323
- Enh #289: Refactor `Schema::normalizeDefaultValue()` method and move it to `ColumnFactory` class (@Tigrov)
2424
- New #292: Override `QueryBuilder::prepareBinary()` method (@Tigrov)
2525
- Chg #294: Update `QueryBuilder` constructor (@Tigrov)

src/Schema.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,9 @@ protected function findColumns(TableSchemaInterface $table): bool
337337
AND ACC2.COLUMN_NAME != ACC.COLUMN_NAME
338338
WHERE AC.OWNER = :schemaName2
339339
AND AC.TABLE_NAME = :tableName2
340-
AND (AC.CONSTRAINT_TYPE = 'P' OR AC.CONSTRAINT_TYPE IN ('U', 'C') AND ACC2.COLUMN_NAME IS NULL)
340+
AND (AC.CONSTRAINT_TYPE = 'P'
341+
OR AC.CONSTRAINT_TYPE = 'U' AND ACC2.COLUMN_NAME IS NULL
342+
OR AC.CONSTRAINT_TYPE = 'C' AND ACC2.COLUMN_NAME IS NULL AND AC.SEARCH_CONDITION_VC != '"' || ACC.COLUMN_NAME || '" IS NOT NULL')
341343
)
342344
SELECT
343345
A.COLUMN_NAME,

0 commit comments

Comments
 (0)