首页博客网络编程
在不同的数据库系统上使用 SQL CHECK
摘要

内容

SQL CHECK 约束:主要提示

  • 需要此约束才能限制列中可能存在的值范围

  • 在定义对单个列的约束时,它只允许对该列使用特定值

  • 在定义表的约束时,它将通过基于同一行中不同列的值来限制特定列的

选中创建表

下面的代码示例在“Person”表的“P_Ids”列中生成约束 CHECK。约束定义列只能有大于 0 的整数。

MySQL的:

复制

CREATE TABLE Person
(
P_Ids int NOT NULL,
LName varchar(255) NOT NULL,
FName varchar(255),
AddressID varchar(255),
CityID varchar(255),CHECK (P_Ids>0)
)

MS Access/SQL Server/甲骨文:

复制

CREATE TABLE Person
(
P_Ids int NOT NULL CHECK (P_Ids>),
LName varchar(255) NOT NULL,
FName varchar(255),
AddressID varchar(255),
CityID varchar(255)
)

为了能够将约束命名为 CHECK,并在各种列上定义它,下面的示例显示了语法:

MS Access / SQL Server / Oracle / MySQL:

复制

CREATE TABLE Person
(
P_Ids int NOT NULL,
LName varchar(255) NOT NULL,
FName varchar(255),
AddressID varchar(255),
CityID varchar(255),CONSTRAINT ck_Person CHECK (P_Ids>0 AND CityID='paris')
)

检查更改表

在生成表后创建约束 CHECK 时:

MS Access / SQL Server / Oracle / MySQL:

复制

ALTER TABLE PersonADD CHECK (P_Ids>0)

为了能够将约束命名为 CHECK,并在各种列上定义它,下面的示例显示了语法:

MS Access / SQL Server / MySQL / Oracle:

复制

ALTER TABLE PersonADD CONSTRAINT ck_Person CHECK (P_Ids>0 AND CityID='Paris')

DROP CHECK:示例

下面的代码示例演示如何删除约束 CHECK:

SQL Server/MS Access/Oracle:

复制

ALTER TABLE PersonDROP CONSTRAINT ck_Person

MySQL的:

复制

ALTER TABLE PersonDROP CHECK CK_PersonsAge;


声明提示:若要转载请务必保留原文链接,申明来源,谢谢合作!

本文链接:https://www.gaoxuejun173.top/blog/273

广告位

本文配乐
来说两句吧

该文章已禁止评论

最新评论

广告位