在sql server中插入日期

Meh*_*egi 1 sql sql-server sql-server-2008

当我尝试执行此查询时

INSERT  INTO StateRegion
        ( FullName ,
          Abbreviation ,
          RegionType ,
          Admitted ,
          Capital
        )
VALUES  ( 'Alabama' ,
          'AL' ,
          1 ,
          '1819-Dec-14' ,
          'Montgomery'
        );
Run Code Online (Sandbox Code Playgroud)

它给我错误sql日期转换错误:

从字符串转换日期和/或时间时转换失败

承认是日期类型.

问题是我无法更改此格式:1819-Dec-14是否可以将转换方法添加到上面的查询?

表定义:

CREATE TABLE StateRegion
(
  ID            bigint       PRIMARY KEY IDENTITY(1,1),
  FullName      varchar(50)  NOT NULL,
  Abbreviation  varchar(2)   NOT NULL,
  RegionType    smallint     NOT NULL,
  Admitted      date         NULL,
  Capital       varchar(50)  NULL
);
Run Code Online (Sandbox Code Playgroud)

Mar*_*ith 6

根据登录语言解释该日期格式的月份名称部分.

如果您必须使用该格式或发出一个,您可以将登录的默认语言更改为美国英语或英国英语

  Set language english
Run Code Online (Sandbox Code Playgroud)

要在有问题的查询之前在运行时设置格式,然后可选择将其切换回来.

如果你有使用yyyy-mm-dd或yyyymmdd的选择,那么日期文字的优选格式虽然在转换时都避免了这个问题date.