CREATE TABLE S
(SNO CHAR(5)NOT NULL PRIMARY KEY,
 SN VARCHAR(8) NOT NULL,SEX CHAR(2)NOT NULL CHECK (SEX IN('男','女'))DEFAULT'男',
 AGE SMALLINT NOT NULL 
CHECK(AGE>7),
DEPT VARCHAR(20),
CONSTRAINT SN_UUNIQUE(SN));
 
CREATE TABLE C
(CNO CHAR(5) NOT NULL PRIMARY KEY, CN VARCHAR(20),CT SMALLINT CHECK(CT>=1))CREATE TABLE SC
(SNO CHAR(5) NOT NULL CONSTRAINT S_F FOREIGN KEY REFERENCES S(SNO),
 CNO CHAR(5)NOT NULL,
SCORE SMALLINT CHECK((SCORE IS NULL)OR(SCORE BETWEEN 0 AND 100)),
CONSTRAINT S_C_P PRIMARY KEY(SNO,CNO),
CONSTRAINT C_F FOREIGN KEY(CNO) REFERENCES C(CNO))
      运行这段程序   下面提示“消息 102,级别 15,状态 1,第 7 行
'(' 附近有语法错误。”
     自己刚刚开始学   不知道错误出在那``
     有前辈知道的指点一下   谢谢``

解决方案 »

  1.   

    CONSTRAINT是可选关键字,表示 PRIMARY KEY、NOT NULL、UNIQUE、FOREIGN KEY 或 CHECK 约束定义的开始。约束是特殊属性,用于强制数据完整性并可以为表及其列创建索引。你的第7行的CONSTRAINT   SN_UUNIQUE(SN)); 没有加入PRIMARY KEY、NOT NULL、UNIQUE、FOREIGN KEY 或 CHECK 约束定义。必须根据你的需要该成以下形式或者删除该局CONSTRAINT   S_C_P   PRIMARY   KEY(SNO,CNO), 
    CONSTRAINT   C_F   FOREIGN   KEY(CNO)   REFERENCES   C(CNO)) 
      

  2.   

    CONSTRAINT   SN_UUNIQUE(SN)--这一段有问题?
    楼主要实现什么
      

  3.   

    SN_U UNIQUE(SN)--中间应该有一个空格
      

  4.   

    CREATE   TABLE   S (
    SNO   CHAR(5) NOT   NULL   PRIMARY   KEY, 
    SN   VARCHAR(8)   NOT   NULL,
    SEX   CHAR(2) NOT   NULL  DEFAULT '男'  CHECK   (SEX   IN( '男', '女')), 
    AGE   SMALLINT   NOT   NULL   CHECK(AGE>7), 
    DEPT   VARCHAR(20)
    CONSTRAINT   SN_U UNIQUE(SN)
    );