SQL Server -- Check 约束(MSSQL,Oracal,Access,MySQL)
2016-11-02 17:16
330 查看
From: http://www.w3school.com.cn/sql/sql_check.asp
SQL CHECK 约束
CHECK 约束用于限制列中的值的范围。如果对单个列定义 CHECK 约束,那么该列只允许特定的值。
如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
SQL CHECK Constraint on CREATE TABLE
下面的 SQL 在 "Persons" 表创建时为 "Id_P" 列创建 CHECK 约束。CHECK 约束规定 "Id_P" 列必须只包含大于 0 的整数。My SQL:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255),CHECK (Id_P>0))
SQL Server / Oracle / MS Access:
CREATE TABLE Persons ( Id_P int NOT NULL CHECK (Id_P>0), LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255),CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes'))
SQL CHECK Constraint on ALTER TABLE
如果在表已存在的情况下为 "Id_P" 列创建 CHECK 约束,请使用下面的 SQL:MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE PersonsADD CHECK (Id_P>0)如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE PersonsADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
撤销 CHECK 约束
如需撤销 CHECK 约束,请使用下面的 SQL:SQL Server / Oracle / MS Access:
ALTER TABLE PersonsDROP CONSTRAINT chk_Person
MySQL:
ALTER TABLE PersonsDROP CHECK chk_Person
相关文章推荐
- SQL Server -- SQL NULL值,ISNull(),Oracal NVL(),MYSQL IFNULL(),COALESCE()
- 【备用】非常不错的ASP操作数据库类,支持多数据库MSSQL,ACCESS,ORACLE,MYSQL等
- (收藏)Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决
- Access, SQL Server, Oracle, MySQL的区别与相似
- Mysql Constraint Check Workarounds(MYSQL不支持约束的处理)
- C#连接Access、SQL Server、Oracle、MySQL、DB2和SyBase数据库的代码集
- Full Outer Join (Not Access or MySQL)
- Java:JDBC篇,Connection连接至几种常用数据库(Oracle,MySQL,Access,SQL Server)
- mysql、mssql、access中的delete比较
- java连接数据库Oracle|DB2|Sql Server|Sybase|Informix|MySQL||PostgreSQL|access
- C#通用数据库操作类 支持Access/MSSql/Orale/MySql等数据库
- mysql5.7.10启动修改初始密码 Could not create or access the registry key needed
- bool 数据类型 在access ,MsSql,MySql 中的区别
- C#连接Access,Sql Server,Oracle,Mysql,IBM DB2,Sybase
- SQL Server的链接服务器(MySQL、Oracle、Ms_sql、Access、SYBASE)
- MySql 到 SQL Server(MSSQL)
- java连接数据库Oracle|DB2|Sql Server|Sybase|Informix|MySQL||PostgreSQL|access
- C#连接各种数据库代码Access,Sql Server,Oracle,Mysql,IBM DB2,Sybase
- SQL Server 第四堂课 用数据库语言while 循环做累加求和。以及数据库的备份,还原,分离,附加。以及check 约束
- Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常