首页 > 其他分享 >约束

约束

时间:2023-11-05 16:25:26浏览次数:30  
标签:Persons 约束 courses KEY TABLE ALTER

一、约束

1. 非空约束 NOT NULL

在一个已创建的表的 Age 字段中添加 NOT NULL 约束如下所示:

ALTER TABLE `Persons`
MODIFY `Age` int NOT NULL;

2. 唯一约束 UNIQUE

2.1 ALTER TABLE 时的 UNIQUE 约束
当表已被创建时,在 P_Id 列创建 UNIQUE 约束:

ALTER TABLE `Persons`
ADD UNIQUE(`P_Id`)

当表已被创建时,需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束:

ALTER TABLE `Persons`
ADD CONSTRAINT uc_PersonID UNIQUE (`P_Id`,`LastName`)

2.2 撤销 UNIQUE 约束
如需撤销 UNIQUE 约束 :

MySQL:
ALTER TABLE `Persons`
DROP INDEX uc_PersonID
SQL Server / Oracle / MS Access:
ALTER TABLE `Persons`
DROP CONSTRAINT uc_PersonID

3. 主键约束 PRIMARY KEY

3.1 添加 PRIMARY KEY

ALTER TABLE `Persons`
ADD PRIMARY KEY (`P_Id`)

如需命名并定义多个列的 PRIMARY KEY 约束,可以使用下面的 SQL 语法:

ALTER TABLE `Persons`
ADD CONSTRAINT pk_PersonID PRIMARY KEY (`P_Id`,`LastName`)

3.2 撤销 PRIMARY KEY

MYSQL:
ALTER TABLE `Persons`
DROP PRIMARY KEY
SQL Server / Oracle / MS Access:
ALTER TABLE `Persons`
DROP CONSTRAINT pk_PersonID

在创建数据表时,因为数据库工作人员忘记添加主键约束,现在我们需要对课程表 courses 添加主键约束,将 id 列设置为主键,请编写相应的 SQL 语句。

ALTER TABLE `courses`
ADD PRIMARY KEY (`id`);

请编写 SQL 语句,删除课程表 courses 中的主键约束

ALTER TABLE courses
DROP PRIMARY KEY;

4. 外键约束 FOREIGN KEY

4.1 ALTER TABLE 时的 SQL FOREIGN KEY 约束
当 "Orders" 表已被创建时,如需在 "P_Id" 列创建 FOREIGN KEY 约束:

ALTER TABLE `Orders`
ADD FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)

如需命名 FOREIGN KEY 约束,并定义多个列的 FOREIGN KEY 约束:

ALTER TABLE `Orders`
ADD CONSTRAINT fk_PerOrders
FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)

4.2 撤销 FOREIGN KEY 约束

标签:Persons,约束,courses,KEY,TABLE,ALTER
From: https://www.cnblogs.com/3456939606zwp/p/17810626.html

相关文章

  • 软件测试|MySQL唯一约束详解
    简介MySQL唯一约束(UniqueKey)是指所有记录中字段的值不能重复出现。MySQL中的唯一约束是一种用于确保表中某列或多列的取值唯一的数据库约束。唯一约束的作用是防止表中出现重复的值,确保数据的完整性和一致性。在本文中,我们将详细介绍MySQL中唯一约束的定义、用法以及其在数据......
  • 软件测试|MySQL 非空约束详解
    简介MySQL中的非空约束(NOTNULLConstraint)是一种用于确保表中某列不允许为空值的数据库约束。非空约束的作用是保证特定列的数据始终包含有效值,防止在插入或更新操作时出现空值,从而维护数据的完整性和一致性。在本文中,我们将详细介绍MySQL中非空约束的定义、用法以及在数据库设......
  • 【MySQL】基础篇-约束
    1.基础知识1.1为什么需要约束?为了保证数据的完整性!1.2什么叫约束?对表中字段的限制。1.3约束的分类:角度1:约束的字段的个数单列约束vs多列约束角度2:约束的作用范围列级约束:将此约束声明在对应字段的后面表级约束:在表中所有字段都声明完,在所有字段的后面声明的约束角度3:约束的......
  • Acwing393. 雇佣收银员 题解 差分约束
    题目链接:https://www.acwing.com/problem/content/description/395/解题思路:差分约束。为了方便起见,定义第\(i\)个时间段为\(i-1:00\)到\(i:00\)首先,为了方便开一个额外的点,令\(R_i\)对应为题目中的\(R(i+1)\),即\(R_i\)表示\(i-1:00\)到\(i:00\)这个时间段的最小需求......
  • javaweb--约束
    作用作用于表中列上的规则,用于限制加入表的数据约束的存在用于保证数据库中数据的完整性、有效性、正确性。约束的分类: auto_increment自增此列插入新一条数据时数值自动+1altertable表名modify列名数据类型约束 外键约束constraint外键名foreignkey外键列名......
  • MySQL约束条件和查询关键字
    1.约束条件约束条件(在数据类型的基础上在进行约束)1.unsigend#只能是正数不能有负数比如年龄2.zerofill#零填充比如int类型可以用零填充来显示3.default#默认值在不填写的情况下使用默认值比如性别默认为男4.notnull#非空5.u......
  • MySQL约束
    约束是按照约定(特定)条件限制,管束等意思。约束的作用是添加、删除。在数据库中对表中的数据进行限制,保证数据的正确性、有效性和完整性。一个表如果添加了约束,不正确的数据将无法插入到表中。约束在创建表的时候添加比较合适。一、约束概述1.1、什么是约束约束用于限制加入表的......
  • PostgreSQL查询约束和创建删除约束
    查询约束SELECTtc.constraint_name,tc.table_name,kcu.column_name,ccu.table_nameASforeign_table_name,ccu.column_nameASforeign_column_name,tc.is_deferrable,tc.initially_deferredFROMinformation_schema.table_constraintsAStc......
  • 质量约束,离不开三板斧
    我一直认为,我们所做的事情并不是团队割裂的独立性的工作,而是属于有目标、有阶段的团队协作性工作,也就是我们常谈及的软件工程。在软件工程里,有一个非常著名的金三角理论:项目质量是由范围、成本与时间这三个要素进行平衡与约束的。 一般来说,项目质量是开发团队的基础保证,该要素大......
  • 差分约束
    差分约束前言又是20231012联考T4考到。。。于是不会,前面的题也没有补,开始学习!定义差分约束是什么,看起来和图论没有一点关系。。。差分约束系统是一种特殊的\(n\)元一次不等式组,\(n\)个变量\(x_1,x_2,\dots,x_n\),和\(m\)个约束条件,每个条件都是形如\(x_i-x_j\le......