我有一张交易表。对于任何给定的记录,我希望能够包含一个显示所有相关交易的门户网站。由于相关记录与父记录在同一个表中,因此我创建了第二个表事件(TO)。我已将这两个TO与一个连接表链接起来,我在其中输入两个TO的外键,以指示哪些记录与哪些其他记录相关。
在给定事务的布局上,我添加了一个门户,显示第二个表事件中的相关记录。到目前为止,非常好。
因此,假设在联接表中我说交易100链接到交易105和110.在交易100的门户中,我可以看到记录105和110。 110。
但是,我还希望在事务105的门户网站中看到事务100,但无法弄清楚如何执行此操作,而无需手动输入相同的关系,但反过来。
NB。我正在使用Filemaker Pro 12。
答案 0 :(得分:0)
您需要为中间表中的每个关系创建两条记录才能执行此操作。
例如,您有TO_1
和TO_2
以及中间表。中间表有两个字段id_1
和id_2
。在TO_1
和TO_2
之间创建关系时,请在中间表中创建两条记录。一条记录将id
TO_1
存储在id_1
和TO_2
id_2
。第二条记录将id
TO_1
id_2
存储在TO_2
和id_1
SqlCommand cmd1 = new SqlCommand(query, sc);
using (SqlDataReader sdr = cmd1.ExecuteReader())
{
while (sdr.Read())
{
for (int i = 0; i < sdr.FieldCount; i++)
{
label23.text += sdr[i].ToString();
}
}
}
sc.Close();
。{/ p>
答案 1 :(得分:0)
听起来您希望所有外键都出现在您使用多键的单个字段中。在您的示例中,多键将如下所示:
100
105
110
如果您不想在相关记录的门户中显示当前记录,可以省略它通过添加如下所示的谓词来定义要排除自身的关系:
fk = fk AND pk≠pk
那会有用吗?