C# 如何在数据库上使用联接。

C# 如何在数据库上使用联接。,c#,sqlite,foreign-keys,C#,Sqlite,Foreign Keys,SQLite和C 我有个小问题。看看那两张桌子。1.他是父母,2岁。是孩子吗 我应该从父表中获取broj_goluba以匹配子表中的par_m和par_z,然后在datagridview中显示它 Foregin键应该有助于快速完成任务,但在这里,当我编写代码时,我有更多的代码行,而不是不使用外键 有人能帮我写下我的代码编辑:SQL查询在使用外键时应该是什么样子吗 外键不存在以帮助快速完成任务。它们的存在是为了加强数据完整性。坦率地说,我看不出您编写的t-SQL代码行数如何取决于外键是否存在 以下

SQLite和C 我有个小问题。看看那两张桌子。1.他是父母,2岁。是孩子吗

我应该从父表中获取broj_goluba以匹配子表中的par_m和par_z,然后在datagridview中显示它

Foregin键应该有助于快速完成任务,但在这里,当我编写代码时,我有更多的代码行,而不是不使用外键


有人能帮我写下我的代码编辑:SQL查询在使用外键时应该是什么样子吗

外键不存在以帮助快速完成任务。它们的存在是为了加强数据完整性。坦率地说,我看不出您编写的t-SQL代码行数如何取决于外键是否存在

以下查询存根应有助于您开始查询:

Select Table1.broj_goluba, Table2.par_z ...
From Table1
Inner Join Table2 on Table1.ID = Table2.par_m

我知道你需要的是它,但它不需要任何速度。也许你指的是索引,而不是外键

选择BROJ_GOLUBA 来自表1 表1.ID=表2.PAR_M或表1.ID=表2.PAR_J上的内部联接表2 或者可能需要两个值相等:

选择BROJ_GOLUBA 来自表1 表1.ID=表2.PAR_M和表1.ID=表2.PAR_J上的内部联接表2
您想根据par_m或par_z检索broj_goluba吗?par_m和par_z在任何给定的行中都不是相同的值,所以哪一个决定了在哪个ID上查找?这是正确的。数据库要大得多,所以我没有在这里显示所有内容,但它们是存在的