|
|
1
2
我不熟悉AdoQuery,但正如您所说,您正在获取受触发器影响的表的ID,同时希望获取原始表的ID,这可能是使用与SQL“scope_identity”等效的函数的问题,请参见 Best way to get identity of inserted row? 编辑 该问题似乎与以下事实有关:ADO查询本身正在使用@@Identity获取添加的记录的ID,而实际上它应该使用scope_Identity(),这在触发器将数据插入另一个包含标识列的表(与您的情况相同)时会产生影响-有关scope_ID的详细信息,请参阅上面的链接实体和@@Identity。 This post 有问题的一些细节 |
|
|
2
1
解决这个混乱的方法之一就是在保存(如果guid是空的)之前向主表中添加一个guid字段,然后在代码中生成一个新的guid,并保留该引用。然后我保存记录并重新查询包含已知guid的记录。这给了我保险,我得到了我想要的准确记录,然后将继续分配FK到主记录的身份值。当然,这是缓慢的,但它总是统计工作。 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
Marc Guillot · 记录值时忽略冲突 1 年前 |
|
|
Fachry Dzaky · 正确使用ROW_NUMBER 1 年前 |
|
|
TriumphTruth · 从满足特定条件的数据集中选择1行 1 年前 |