_drug_ » 13 апр 2009, 10:11
В SelectSQL запрос вроде:
select Field1
, Field2
***
, FieldN
from ViewName;
В UpdateSQL у меня запрос
update TableName
set Field1 = :Field1
, Field2 = :Field2
where KeyField = :KeyField;
При этом Field1, Field2 не являются ключами. Где здесь еще нужно указывать первичный ключ? Дело в том, что таблицы связаны во View вроде этого:
create view ViewName (
, FieldName1
, FieldName2
, FieldName3
, FieldName4 )
AS
SELECT tn1.Field1 as FieldName1
, tn1.Field2 as FieldName2
, tn2.Field1 as FieldName3
, tn2.Field1 as FieldName4
FROM TableName1 tn1
, TableName2 tn2
WHERE TableName1.KeyField = TableName2.KeyField;
Извиняюсь, что не привожу реальные запросы - они на другой машине, поэтому привожу по памяти.
БД компоненты: IBDatabase, IBTransaction, IBDataset, DataSource, DBGrid.
В SelectSQL запрос вроде:
select Field1
, Field2
***
, FieldN
from ViewName;
В UpdateSQL у меня запрос
update TableName
set Field1 = :Field1
, Field2 = :Field2
where KeyField = :KeyField;
При этом Field1, Field2 не являются ключами. Где здесь еще нужно указывать первичный ключ? Дело в том, что таблицы связаны во View вроде этого:
create view ViewName (
, FieldName1
, FieldName2
, FieldName3
, FieldName4 )
AS
SELECT tn1.Field1 as FieldName1
, tn1.Field2 as FieldName2
, tn2.Field1 as FieldName3
, tn2.Field1 as FieldName4
FROM TableName1 tn1
, TableName2 tn2
WHERE TableName1.KeyField = TableName2.KeyField;
Извиняюсь, что не привожу реальные запросы - они на другой машине, поэтому привожу по памяти. :(
БД компоненты: IBDatabase, IBTransaction, IBDataset, DataSource, DBGrid.