Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否可以查询表中引用了sqlite中其他表的所有列?_C#_Sqlite - Fatal编程技术网

C# 是否可以查询表中引用了sqlite中其他表的所有列?

C# 是否可以查询表中引用了sqlite中其他表的所有列?,c#,sqlite,C#,Sqlite,正如标题所说,如果我有一个表,创建如下: CREATE TABLE "MyTable" ( "ID" INTEGER PRIMARY KEY NOT NULL, "OtherTable1ID" INTEGER NOT NULL CONSTRAINT 'OtherTable1ID' REFERENCES 'OtherTable1' ('ID'), "OtherTable2ID" INTEGER NOT NULL CONSTRAINT 'OtherTable2ID' REFERENCES 'O

正如标题所说,如果我有一个表,创建如下:

CREATE TABLE "MyTable" ( 
"ID" INTEGER PRIMARY KEY NOT NULL, 
"OtherTable1ID" INTEGER NOT NULL CONSTRAINT 'OtherTable1ID' REFERENCES 'OtherTable1' ('ID'), 
"OtherTable2ID" INTEGER NOT NULL CONSTRAINT 'OtherTable2ID' REFERENCES 'OtherTable2' ('ID'), 
"Repetition" INTEGER
)
我正在寻找一个查询,它返回我的列名
OtherTable1ID
OtherTable2ID

我自己的方法是查询表的create语句并查找
引用
关键字(使用Regex),但我希望有一个更简单的解决方案


第二种方法是获取表中的所有列名,并查看它们是否在名称中包含“ID”。这在很大程度上是有效的,因为本例中的数据库都遵循这种命名约定,但是,如果一个表包含一个列,该列的名称包含“ID”,但不引用任何内容,该怎么办?因此,我需要一个普遍适用的解决方案

您可以使用pragma列出并获取关于表的外键约束的信息:

如果您只需要列的名称,而不关心其余信息(或希望在更大的查询中使用它们):


我想这个链接可以帮助您将这些内容翻译成sqlite?请查看pragma。@Shawn非常感谢您,这正是我要找的。如果你把它作为答案,我会记下来。
PRAGMA foreign_key_list(MyTable);
SELECT "from" FROM pragma_foreign_key_list('MyTable');