Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.14;
Скачать: CL | DM;

Вниз

ADO, странное формирование запроса на апдейт.   Найти похожие ветки 

 
Danilka ©   (2005-05-04 13:41) [0]

Просто случайно заметил только-что, еще не разбирался толком как "лечить":
СУБД: MS-SQL.
Имеем таблицу:
create table t_test (
 y1 int identity,
 y2 varchar(10),
 y3 varchar(10),
 y4 int,
 primary key (y1))
На форме - ADOConnection, ADODataset, DataSource и DBGrid.
В гриде изменяем у любой записи значение, например, поля y3, после поста в SQL Profiler видим, что выполняется такой запрос:
exec sp_executesql N"UPDATE "di".."t_test" SET "y3"=@P1 WHERE "y1"=@P2 AND "y3"=@P3", N"@P1 varchar(1),@P2 int,@P3 varchar(1)", "4", 1, "1"
То-есть, в секции WHERE перечислено кроме ключевого поля еще и изменяемое. Почему? Никогда раньше с редактированием в гриде не сталкивался.


 
Danilka ©   (2005-05-04 13:46) [1]

да, забыл написать, ADODataset.CommandText = "select y1, y2, y3, y4 from t_test"
ну и все компоненты между собой связаны, конечно-же.
:)


 
Stanislav ©   (2005-05-04 13:51) [2]

Может вам поможет эта ссылка
http://www.delphikingdom.com/asp/viewitem.asp?UrlItem=/helloworld/ado02.htm


 
sniknik ©   (2005-05-04 13:57) [3]

create table t_test (
y1 int identity(1, 1) PRIMARY KEY,
y2 varchar(10), ...

проверь так.


 
sniknik ©   (2005-05-04 13:58) [4]

упс. сорри  не обратил внимания > primary key (y1))


 
Danilka ©   (2005-05-04 13:59) [5]

[2] Stanislav ©   (04.05.05 13:51)
Точно! Помогло, спасибо. :))


 
Danilka ©   (2005-05-04 14:00) [6]

Конкретно, помогло вот-это:
ADODataSet1.Properties["Update Criteria"].Value := 0;


 
Stanislav ©   (2005-05-04 14:38) [7]

Danilka ©   (04.05.05 14:00) [6]
А интересно если поставить серверный курсор, что покажет profiler?



Страницы: 1 вся ветка

Текущий архив: 2005.06.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.062 c
1-1116926464
Pavelkq
2005-05-24 13:21
2005.06.14
Передача имени массива в качестве параметра


3-1115364541
new_one
2005-05-06 11:29
2005.06.14
ошибка при работе с таблицей


4-1114421513
Jolik
2005-04-25 13:31
2005.06.14
Какое сообщение приходит при...


9-1110808760
qwe
2005-03-14 16:59
2005.06.14
GlScene and 3DS


3-1115275908
sergg
2005-05-05 10:51
2005.06.14
Установка фильтра в TADOTable