Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO [D6, MSSQL]


tormozzz ©   (2002-09-16 15:41:00) 

Народ, подскажите где ошибка?
with DataModule2.ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add("insert into test (data,d) values (:dat,:d)");
Parameters.ParamByName"dat").Value:=StrToDateTime"01.01.2000");
Parameters.ParamByName("d").Value:=1;
ExecSQL;
end;
Delphi ругается, что мол "Optional feature not implemented"
ЗЫ Причем если убрать поле DateTime, то все нормально заносится.


sniknik   (2002-09-17 11:24:00) [1]

Кому удобнее? мне нет.
хочеш ODBC поменяй обрашения здесь это обсуждалось фактичести в тоже время что и этот топик, уже устал в два места одно и то же писать :--))
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1032101758&n=1


Tormozzz   (2002-09-17 08:40:00) [2]

2sniknik
Точно:)
Через OLE DB SQL Server все работает.
Хотя... через ODBC драйвер удобнее было бы.


sniknik   (2002-09-16 18:26:00) [3]

только сегодня было подобное.
Случаем не драйвер ODBC используешь? сделай подключение через OLE DB SQL Server будет нормально.


Александр Спелицин   (2002-09-16 18:02:00) [4]

Это ошибка оборачивания компонент ADO в одежки от VCL Borland-а.
У нас даже было желание исправить исходники VCL, касающиеся ADO и переписать пакет ado.bpl. В лоб проблема лечится заменой параметров и полей типа DateTime на тип String и передавать дату в универсальном формате, рекомендованном MS: yyyymmdd hh:nn:ss


oss   (2002-09-16 17:21:00) [5]

1. может и не важно, но
Parameters.ParamByName"dat").Value:=StrToDateTime"01.01.2000");
потерял несколько скобок.
2.раз ты уже знаешь значения параметров, то может стразу и писать
SQL.Add("insert into test (data,d) values (""12.12.2000"",1)");


Mike Kouzmine   (2002-09-16 16:42:00) [6]

А в MSSQL формат DateTime какой?


Tormozzz   (2002-09-16 16:20:00) [7]

2Mike Kouzmine
Может StrToDate?
Пробовал - тот же результат:(
2Abaddon
Может, попробовать
Parameters.ParamByName("dat").AsDateTime := StrToDateTime("01.01.2000");

Дак вроде .AsDateTime можно использовать в Query1, а в ADOQuery1 надо .value ?







Abaddon   (2002-09-16 16:04:00) [8]

Может, попробовать
Parameters.ParamByName("dat").AsDateTime := StrToDateTime("01.01.2000");


Mike Kouzmine   (2002-09-16 16:01:00) [9]

Может StrToDate?


Наверх

Титульная страница Поиск, карта сайта Написать письмо