数据库中constraint是什么意思 数据库constraint用法
发布时间: 5/6/2023 8:34:19 AM 来源: 孙子你凭什么碰我女人
在sql中,constraint用法
constraint是一个子句,定义表结构时经常使用。
例如:constraint
pk_emp
primary
key(empno)是设置主键,主键名字是pk_emp。
这时[index]由pk_emp替代了。
严格的说constraint[index]
应该写成[constraint
indexname]表示该子句可以省略。
例如:
primary
key(empno)
sql语句中constraint是什么意思
这条语句的意思是:
创建表,表名为“成绩”,表中包含4个字段,其中
“学号”字段为char(字符)类型,宽度为11,同时,对该字段建立foreign key(外部键)约束,参照“学员信息”表的“学号”字段,并且不允许空值;
“课程”字段为int(整数)类型,同时,对该字段建立foreign key(外部键)约束,参照“课程”表的“编号”字段,并且不允许空值;
“考次”字段为int(整数)类型,同时,对该字段建立约束名为“PK_成绩”的primary key(主键)约束,该主键是复合主键,同时作用在学号、课程和考次3个字段上,并且不允许空值;
“成绩”字段为decimal(带固定精度和小数位数的数值数据)类型,总宽度为5位,小数位数为2,同时,对该字段建立default(默认)约束,默认值为0,并且不允许空值
约束是什么意思啊
约束是在表中定义的用于维护数据库完整性的一些规则。 通过为表中的列定义约束可以防止将错误的数据插入表中,也可以保持表之间数据的一致性 .若某个约束条件只作用于单独的列,可以将其定义为列约束也可定义为表约束;若某个约束条件作用域多个列,则必须定义为表约束。 SQL Server中的约束用来确保系统的完整性。一般约束可以分为: 主键约束外键约束检查约束默认约束唯一约束非空约束。
sql语句中constraint是什么意思
USING INDEX可以让你在创建主键、唯一性约束的时候使用指定的索引或创建索引、或修改索引的存储结构。官方解释:Using Indexes to Enforce ConstraintsWhen defining the state of a unique or primary key constraint, you can specify an index for Oracle to use to enforce the constraint, or you can instruct Oracle to create the index used to enforce the constraint.using_index_clauseYou can specify theusing_index_clause only when enabling unique or primary key constraints. You can specify the clauses of theusing_index_clause in any order, but you can specify each clause only once.If you specify schema.index, then Oracle attempts to enforce the constraint using the specified index. If Oracle cannot find the index or cannot use the index to enforce the constraint, then Oracle returns an error.If you specify the create_index_statement, then Oracle attempts to create the index and use it to enforce the constraint. If Oracle cannot create the index or cannot use the index to enforce the constraint, then Oracle returns an error.If you neither specify an existing index nor create a new index, then Oracle creates the index. In this case:The index receives the same name as the constraint.If table is partitioned, then you can specify a locally or globally partitioned index for the unique or primary key constraint.Restrictions on theusing_index_clauseThe following restrictions apply to theusing_index_clause:You cannot specify this clause for a view constraint.You cannot specify this clause for a NOT NULL, foreign key, or check constraint.You cannot specify an index (schema.index) or create an index (create_index_statement) when enabling the primary key of an index-organized table.You cannot specify the domain_index_clause of index_properties or theparallel_clause ofindex_attributes.希望能帮到您
数据库中 constraint 是什么
建立约束的。。
alter table aa
add constraint fk_stu
foreign key(id) references bb(id)
这就是把aa表的id设置成bb表主键id的外键关系
什么是数据库约束
oracle数据库约束
约束用于确保数据库数满足业务规则。
约束包括:NOT NULL,UNIQUE,PRIMARY KEY,FOREIGN KEY以及CHECK等5种类型。
建立主键约束和唯一约束时,Oralce会基于约束列自动建立唯一索引;主键约束不允许为NULL,唯一约束允许为NULL。
一张表只能建立一个主键约束。
建表约束:NOT NULL只能在列级定义;其它4种既可以在列级定义,也可以在表级定义。复合主键约束只能在表级定义。
维护约束:增加NOT NULL约束时必须使用MODIFY子句,而增加其它约束时需要使用ADD子句。
第一, 定义约束
---------------------------------------------
语法:
CREATE TABLE [SCHEMA.]table_name(
column_name datatype [DEFAULT expr] [column_constraint],
...
[table_constraint][, ...]
);
例子:
CREATE TABLE tt_user_info
(
ID VARCHAR2(20 BYTE),
NAME VARCHAR2(20 BYTE) NOT NULL,
category_id VARCHAR2(20 BYTE) REFERENCES tb_out_service(serviceid),
remark VARCHAR2(1000)
);
ALTER TABLE tt_user_info ADD (
CHECK ( LENGTH(NAME)>2),
PRIMARY KEY (ID),
UNIQUE (NAME)
);
说明:
1. NOT NULL,非空约束
not null
2. UNIQUE,唯一约束
UNIQUE (COL_NAME)
3. PRIMARY KEY,主键约束
primary key (col_name1 [, col_name2])
4. FOREIGN KEY,外键约束
它有三种类型:
来源:() - oracle数据库约束 转帖_zeeman_新浪博客
references primary_table(primary_col)
on delete cascade
on delete set null
5. CHECK,检查约束
check (money > 1000)
第二, 维护约束
----------------------------------------
1. 增加约束
NOT NULL使用ALTER MODIFY子句,其它的使用ALTER ADD子句
-------------------------------
CREATE TABLE tt_user(NAME VARCHAR2(20));
ALTER TABLE tt_user MODIFY user_name NOT NULL;
ALTER TABLE tt_user ADD CONSTRAINT constraint_name UNIQUE(NAME);
ALTER TABLE tt_user ADD CONSTRAINT constraint_name PRIMARY KEY(NAME);
ALTER TABLE tt_user ADD parentid VARCHAR2(20)
CONSTRAINT constraint_name
REFERENCES tb_out_service(serviceid);
2. 修改约束名
ALTER TABLE table_name RENAME CONSTRAINT old_constraint_name TO new_constraint_name
3. 删除约束
ALTER TABLE table_name DROP CONSTRAINT constraint_name
4. 禁止约束
ALTER TABLE table_name DISABLE CONSTRAINT constraint_name [CASCADE];
5.激动约束
ALTER TABLE table_name ENABLE CONSTRAINT constraint_name;
第三. 显示约束信息
所有约束信息
SELECT *
FROM user_constraints
来源:() - oracle数据库约束 转帖_zeeman_新浪博客