首页 > 数据库技术 > 详细

sql基础

时间:2017-07-06 18:09:37      阅读:419      评论:0      收藏:0      [点我收藏+]

1.  NOT NULL:

如果CUSTOMERS表已经创建,然后添加一个NOT NULL约束SALARY列在Oracle和MySQL:

 

ALTER TABLE CUSTOMERS

  MODIFY SALARY DECIMAL(18,2) NOT NULL;

------------------------------

ALTER :修改。对象是表

MODIFY :修改、修饰。对象是字段属性。同类的还有add,set等操作。

DECLMAL(a,b):有效长度为a,小数位数b。

 

2. DEFAULT:

删除DEFAULT约束:

ALTER TABLE CUSTOMERS

  ALTER COLUMN SALARY DROP DEFAULT;

---------------

COLUMN :列

 

3.UNIQUE:

如果CUSTOMERS表已经创建,然后要将唯一约束添加到AGE列:

ALTER TABLE CUSTOMERS

  MODIFY AGE INT NOT NULL UNIQUE;

 

使用下面的语法,它支持命名的多个列的约束:

ALTER TABLE CUSTOMERS

  ADD CONSTRAINT myUniqueConstraint UNIQUE(AGE,SALARY);

-----------

myUniqueConstraint UNIQUE(A,B)

删除unique所有约束:

ALTER TABLE CUSTOMERS

  DROP CONSTRAINT MyConstraintUnique;

 

4.PRIMARY KEY

创建PRIMARY KEY约束:

ALTER TABLE CUSTOMERS

  ADD PRIMERY KEY (ID);

 

添加多个PRIMARY KEY:

ALTER TABLE CUSTOMERS

  ADD CONSTRAINT PK_CUSTID PRIMARY KEY (ID,NAME);

 

删除PRIMARY KEY:

ALTER TABLE CUSTOMERS

  DROP PRIMARY KEY;

 

5.外键:

创建表时:

CUSTOMER_ID INT references CUSTOMERS(ID);

表已创建,字段未创建:

ALTER TABLE ODERS

  ADD FOREIGN KEY CUSTOMERS_ID REFERENCES CUSTOMERS(ID);

删除外键:

ALTER TABLE ODERS

  DROP FOREIGN KEY;

 

6.CHECK 约束

添加:

ALTER TABLE COSTOMERS

  MODIFY AGE INT CHECK(AGE >=18);

多个:

ADD CONSTRAINT MyCheckConstraint CHECK(AGE>=18);

 

sql基础

原文:http://www.cnblogs.com/John-/p/7127417.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!