我有两个表,其公共字段是Load_ID。第一个PK与第二个的FK有一对多的关系。例如:如何将外键链接到Oracle中自动递增的主键?
Table1:
1, someValue
Table2:
1, value1, ...
1, value2, ...
1, value3, ...
我已经嵌入在ASP.NET类实际insert语句,其中值是从用户的输入采取:
"INSERT INTO Compare_Header_Table VALUES
(compare_sequence.nextval, //other values are inserted here)
顺序我使用自动增量PK是CREATE SEQUENCE compare_sequence;
这似乎工作,即使没有创建一个触发器或指定任何参数,因为该序列默认为1的增量和初始值为1,这是我的目的罚款。
我遇到问题的地方是尝试将FK从第二个表格链接到第一个表格的PK。我不能简单地使用compare_sequence.currval
,因为我有一个单独的方法插入到每个表中,所以我每次都创建一个新的连接。我不想将这些结合到一个方法中,因为这将涉及到改变我的C#类的逻辑结构,我宁愿保持原样。
有关如何使这项工作的任何建议?
您不应该使用单独的连接插入应该在单个事务中。 – 2013-02-19 16:55:03
@a_horse_with_no_name这是很好的知道以备将来参考。原来我只是把它插入一张桌子,但后来它分成两部分。现在,所有插入操作都会涉及一些我宁愿避免的重大重组。 – user1985189 2013-02-19 17:06:08