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.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 поймет это для вас.
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 со всеми переменными типа текста.
Comments