From 266e9ae06a3b7c7ae06b096f7ec093f6ab937e6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Sat, 24 Feb 2024 00:16:03 +0100 Subject: [PATCH] more fix --- .../Sql/Sqlite/debug-attach/SqliteSchemaManager.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Persistence/Sql/Sqlite/debug-attach/SqliteSchemaManager.php b/src/Persistence/Sql/Sqlite/debug-attach/SqliteSchemaManager.php index 7221ec8786..764a4d3f60 100644 --- a/src/Persistence/Sql/Sqlite/debug-attach/SqliteSchemaManager.php +++ b/src/Persistence/Sql/Sqlite/debug-attach/SqliteSchemaManager.php @@ -204,7 +204,7 @@ public function listTableForeignKeys($table, $database = null) { $table = $this->normalizeName($table); - $columns = $this->selectForeignKeyColumns('', $table) + $columns = $this->selectForeignKeyColumns($database ?? 'main', $table) ->fetchAllAssociative(); if (count($columns) > 0) { @@ -765,13 +765,15 @@ protected function selectIndexColumns(string $databaseName, ?string $tableName = protected function selectForeignKeyColumns(string $databaseName, ?string $tableName = null): Result { - $sql = <<<'SQL' + [$databaseName, $tableName] = self::extractSchemaAsPrefixFromTableName($tableName, $databaseName); + + $sql = ' SELECT t.name AS table_name, p.* - FROM sqlite_master t - JOIN pragma_foreign_key_list(t.name) p + FROM ' . $databaseName . 'sqlite_master t + JOIN ' . $databaseName . 'pragma_foreign_key_list(t.name) p ON p."seq" != "-1" -SQL; +'; $conditions = [ "t.type = 'table'",