Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизВставка текущей даты в БД Найти похожие ветки
← →
Vaso © (2010-02-19 17:16) [0]Пытаюсь вставить текущую дату в таблицу БД.
(CodeGear Delphi 2009, Windows 2003, MSSQL 2005, поле LSDate[DateTime])
SQLQuery1.Active:= False;
SQLQuery1.SQL.Text:= "update students set LSDate=:prm where ID="+#39+ID+#39; // строка 2
SQLQuery1.Params.ParseSQL(SQLQuery1.SQL.Text, True);
SQLQuery1.Params.ParamByName("prm").DataType:= ftDate; // строка 4
SQLQuery1.Params.ParamByName("prm").Value:= Now; // строка 5
SQLQuery1.ExecSQL();
Выбрасывается ошибка - DBX Error: UnsupportedFieldType
но если это сделать "через ...", т. е. записать так:
SQLQuery1.SQL.Text:= "update students set LSDate=2010-02-18 where ID="+#39+ID+#39; // строка 2
то в поле LSDate таблицы появляется запись: 14.06.1905 т. е. всё ОК, хотя дата, конечно, не совсем та ...
Дату текущую записать хочется очень. Спасибо
← →
12 © (2010-02-19 18:06) [1]
> SQLQuery1.Params.ParamByName("prm").Value:= Now; // строка
> 5
неверные типы параметров?
SQLQuery1.Params.ParamByName("prm").Value:= datetimetostr(Now)?
← →
Медвежонок Пятачок © (2010-02-19 18:25) [2]"update students set LSDate=getdate() where ID= :p_id"
Parameters.ParamValues["p_id"] := MyID;
← →
Vaso © (2010-02-19 20:41) [3]Медвежонок Пятачок © (19.02.10 18:25) [2]
> "update students set LSDate=getdate() where ID= :p_id"
> Parameters.ParamValues["p_id"] := MyID;
Ура. Заработало!
Правильно так:SQLQuery1.SQL.Text:= "update students set LSDate=getdate() where ID="+#39+ID+#39; // строка 2
Спасибо всем.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.059 c