как вставить datetime в таблицу базы данных SQL?

Как вставить datetime в таблицу базы данных SQL ? Есть ли способ вставить этот запрос через команду insert в C#/.NET?

4 ответов


значения DateTime должны быть вставлены, как если бы они были строками, окруженными одинарными кавычками:

'20100301'

SQL Server допускает множество принятых форматов дат, и большинство библиотек разработки должны предоставлять ряд классов или функций для правильной вставки значений datetime. Однако, если вы делаете это вручную, важно различать формат даты с помощью DateFormat и использовать обобщенный формат:

Set DateFormat MDY --indicates the general format is Month Day Year

Insert Table( DateTImeCol )
Values( '2011-03-12' )

установив dateformat, SQL Server теперь предполагает, что мой формат YYYY-MM-DD вместо YYYY-DD-MM.

УСТАНОВИТЬ DATEFORMAT

SQL Server также распознает общий формат, который всегда интерпретируется одинаково:YYYYMMDD например 20110312.

если вы спрашиваете, как вставить текущую дату и время с помощью T-SQL, то я бы рекомендовал использовать ключевое слово CURRENT_TIMESTAMP. Например:

Insert Table( DateTimeCol )
Values( CURRENT_TIMESTAMP )

вам понадобится datetime столбец в таблице. Затем вы можете сделать следующую вставку, чтобы вставить текущую дату:

INSERT INTO MyTable (MyDate) Values (GetDate())

Если это не сегодняшняя дата, то вы должны иметь возможность использовать строку и укажите формат даты:

INSERT INTO MyTable (MyDate) Values (Convert(DateTime,'19820626',112)) --6/26/1982

вам не всегда нужно конвертировать строку, часто вы можете просто сделать что-то вроде:

INSERT INTO MyTable (MyDate) Values ('06/26/1982') 

и SQL Server выяснит это для вас.


если у вас есть фактическое время в виду GETDATE() будет функцией, которую вы ищете


myConn.Execute "INSERT INTO DayTr (dtID, DTSuID, DTDaTi, DTGrKg) VALUES (" & Val(txtTrNo) & "," & Val(txtCID) & ", '" & Format(txtTrDate, "yyyy-mm-dd") & "' ," & Val(Format(txtGross, "######0.00")) & ")"

Сделано в vb со всеми переменными типа текста.