DROP TABLE Test;
CREATE TABLE Test
(
  dates DATE NOT NULL DEFAULT(CURRENT_TIMESTAMP)
);--这样可以 
CREATE TABLE Test
(
  dates DATE NOT NULL,
  CONSTRAINT DFT_dates DEFAULT(CURRENT_TIMESTAMP) For dates
);--这样便报错,求解 

解决方案 »

  1.   

    语法不对,在表中加字段及默认值
    alter table tb add col_name datetime not null default getdate()
      

  2.   

    能具体说下哪里语法不对吗?报的是FOR语法不对
      

  3.   

    没有for dates这样的语法,一定会报错的。
      

  4.   

    CREATE TABLE Test
    (
      dates DATE NOT NULL 
    );
    ALTER TABLE Test
    ADD CONSTRAINT DFT_dates DEFAULT(CURRENT_TIMESTAMP) For dates
    --可是这样不会报错,求解 
      

  5.   


    这个是先创建字段,再在字段上加默认值,是可以的(实际上是两条sql语句),如果创建字段及加默认值一句sql完成的话,不能用ALTER TABLE Test
    ADD CONSTRAINT DFT_dates DEFAULT(CURRENT_TIMESTAMP) For dates可以用
    CREATE TABLE Test
    (
      dates DATE NOT NULL DEFAULT(CURRENT_TIMESTAMP)
    );--这样可以
      

  6.   

    换个说法吧如何在建表时就为字段'dates'指定默认值'CURRENT_TIMESTAMP'及约束的名称'DFT_dates'而不需要建完表后再增加
      

  7.   


    按你第一种不会报错的做法添加后再去看表的sql语句就是上面的这种啊,Default就是默认值约束...
      

  8.   

    我知道怎么回事了
    DEFTAULT只能在创建字段后立马定义
    不能在所有的字段都创建完后再定义
    跟PK、FK可以在所有的字段都创建完后再定义 是不一样的
    下面的语句 就可以了
    CREATE TABLE Test
    (
      dates DATE NOT NULL
      CONSTRAINT DFT_dates DEFAULT(CURRENT_TIMESTAMP)
    );