sql基础

Posted John_leaf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql基础相关的知识,希望对你有一定的参考价值。

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基础的主要内容,如果未能解决你的问题,请参考以下文章

SQL基础教程的内容简介

T-SQL基础03.子查询

详解SQL集合运算

SQL集合运算

理解SQL查询的底层原理

基础很重要~~04.表表达式-上篇