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

Вниз

Формат даты в SQL   Найти похожие ветки 

 
Serg De   (2003-08-26 15:54) [0]

Здравствуйте!
Возникла проблема. И что-то никак не пойму в чем дело. Необходимо занести значение текстовой переменной в поле DateTime базы SQL. SQL-запрос: INSERT INTO DATABASE DATE VALUES :DATEQ. Значение текста: S="12.08.2003". Делаю Query1.ParamByName("DATEQ").AsDate:=StrToDate(S). При ExecSQL выдает Invalid Date format. Пробовал VALUES :"DATEQ" и VALUES :"DATEQ", пробовал перед INSERT SET DATEFORMAT "dmy" ставить - не помогает. Где ошибка???
Заранее благодарен.


 
ZrenBy ©   (2003-08-26 16:01) [1]

Передавай в формате ISO - 20030812

Это формат, который интерпретируется однозначно


 
Miau ©   (2003-08-26 16:04) [2]

Не знаю, в чём ошибка, но попробуй такой запрос:
Query1.SQL.TEXT:=
"INSERT INTO [DATABASE] ([DATE]) VALUES (CAST("""+s+""" as datetime))"


 
Serg De   (2003-08-26 16:07) [3]

Попробовал. Делфа пишет,что это "not valid date".


 
ZrenBy ©   (2003-08-26 16:10) [4]

Параметр сделай текстовым

Query1.ParamByName("DATEQ").AsString:=FormatDateTime("yyyymmdd",StrToD ate(S))


 
Serg De   (2003-08-26 16:34) [5]

ZrenBy
В том-то и дело, что параметр должен быть датой, т.к. поле в базе типа datetime и храниться значение должно как Date, а не как String.


 
ZrenBy ©   (2003-08-26 16:39) [6]

MSSQL Server - это вам не <подставьте нужное>

CREATE TABLE [dbo].[TBL_DATE] (
[A] [datetime] NOT NULL
) ON [PRIMARY]
GO

declare @D char(8)
set @D = "20030812" -- это строка
insert into TBL_DATE (A)values(@D)

GO

select * from TBL_DATE


 
Serg De   (2003-08-26 17:41) [7]

ZrenBy
Спасибо... В принципе получилось немного сложнее, чем хотелось бы, но работает :)


 
stud ©   (2003-08-27 09:38) [8]

можно еще так:

query1.Params.Items[0].DataType:=ftDate;
query1.ParamByName("dateq").Value:=



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
3-58563
zorik
2003-08-27 13:50
2003.09.18
сайт по IB


3-58535
Relaxxx
2003-08-28 10:32
2003.09.18
Значения колонки таблицы в ComboBox


14-58862
Relaxxx
2003-08-30 14:51
2003.09.18
Как мне узнать что в Едит ввели нечисло а строковое значение??


7-58922
maxon
2003-07-08 16:57
2003.09.18
запуск от другого имени


1-58775
konstantinov
2003-09-05 17:57
2003.09.18
Помогите с указателями