|
Проблема с insert в ADODataSet при связке из 2х таблиц
|
|||
---|---|---|---|
#18+
Добрый день. может кто встречался с такой проблеммой. есть две таблицы в MSSQL tbl_GoodsInv { Inv_ID bigint, cost float } и tbl_Spec { spec_id bigint, inv_id bigint, tr_id bigint, name varchar } связаны они один ко многим. Когда делаю запрос типа : SELECT dbo.tbl_GoodsInv.*, dbo.tbl_Spec.* FROM dbo.tbl_GoodsInv INNER JOIN dbo.tbl_Spec ON dbo.tbl_GoodsInv.Inv_ID = dbo.tbl_Spec.Inv_ID where dbo.tbl_Spec.tr_id=:TR_ID в гриде всё нормально,update тоже нормально... но вот когда пытаюсь сделать insert, то почему то монитор показывает что сначало insert происходит в таблицу dbo.tbl_Spec, а потом в dbo.tbl_GoodsInv.!!!!и возникает error. Хотя должно быть наоборот, сначало он должен вставить в dbo.tbl_GoodsInv, а потом в dbo.tbl_Spec c новым значением inv_id. Пытался использовать Dynamic Propertis - Unique Table= dbo.tbl_GoodsInv, так вроде стало лучше, сначало он insert в dbo.tbl_GoodsInv возвращает identity а потом insert в dbo.tbl_Spec, но при вторм insertе он не вставляет новое значение inv_id. Как с этим бороться ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2002, 15:42 |
|
Проблема с insert в ADODataSet при связке из 2х таблиц
|
|||
---|---|---|---|
#18+
Бороться нужно так, что в grid-ах вообще ничего не надо вставлять, особенно в непонятно какой запрос. Чего Вы хотите, чтобы query сама знала, куда чего вставить? Откуда же. Руками нужно - сначала в одну таблицу, потом в другую. По уму так делают обычно. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2002, 10:54 |
|
Проблема с insert в ADODataSet при связке из 2х таблиц
|
|||
---|---|---|---|
#18+
да не. В MSDN написано , что провайдер ADOBD для MSSQL сам раздупляет куда что вставлять, например в описанном выше примере, работает update и delete и работает корректно, а вот с insertom загвоздка. Да и собственно почему я не могу вставлять в гриде ? это удобно, быстро (с точни зрения ввода информации), и главное это нравится юзверям, а объяснения типа "этого невозможно зделать", или "так обычно не делают" не катит. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2002, 15:00 |
|
|
start [/forum/topic.php?fid=58&fpage=2087&tid=2120046]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 252ms |
total: | 375ms |
0 / 0 |