首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小雨的CSDN

    7.MySQL数据库中的约束

    create table student( id int not null, name varchar(20) default ‘unknown’ ); 4. primary key 主键约束 references class(id)); 插入数据: 查看两个表数据 如果插入一个超过四个班级的班级,那么就会报错 使用外键,会对插入操作的效率产生一定的影响,同时外键约束也会影响表的删除

    2.3K20编辑于 2022-10-26
  • 来自专栏侯哥的Python分享

    Mysql基础7-约束

    一、约束的基本概念   1、概念:约束是作用于表中字段上的规则,用于限制储存在表中的数据   2、目的:保证数据库中的数据的正确性,有效性和完整性   3、分类 非空约束(not null):限制该字段的数据不能为 null 唯一约束(unique):保证该字段的所有数据都是唯一,不重复的 主键约束(primary key):主键是一行数据的唯一标识,要求非空且唯一 默认约束(default):保存数据时,如果未指定该字段的值 ,则采用默认值 检查约束(check 8.0以后的新约束):保证字段满足某一个条件 外键约束(foreign key):用来让两张变的数据建立连接,保证数据的一致性和完整性 二、约束的案例实践   需求 四、外键约束展示   1、原始数据:student表结构及其数据 mysql> select * from student; +----+----------+------------+-------+ cascade on delete cascade; Query OK, 6 rows affected (0.05 sec) Records: 6 Duplicates: 0 Warnings: 0   7

    75540编辑于 2023-07-24
  • 来自专栏全栈程序员必看

    CHECK约束_数据库check约束怎么写

    CHECK约束会检查输入到记录中的值是否满足一个条件,如果不满足这个条件则对数据库做的修改不会成功。比如,一个人的年龄是不可能为负数的,一个人的入学日期不可能早于出生日期,出厂月份不可能大于12。 ,所以在数据库中执行此SQL语句后数据库会报出下面错误信息: INSERT 语句与CHECK 约束”CKT_PersonFWorkY__24927208″冲突。 ,所以在数据库中执行此SQL语句后数据库会报出下面错误信息: INSERT 语句与CHECK 约束”CKT_PersonFNumbe__267ABA7A”冲突。 ,所以在数据库中执行此SQL语句后数据库会报出下面错误信息: INSERT 语句与 CHECK 约束”ck_1″冲突。 该冲突发生于数据库”demo”,表”dbo.T_Person”。

    2.5K30编辑于 2022-09-19
  • 来自专栏Devops专栏

    数据库约束-主键约束-唯一约束-非空约束-默认值

    数据库约束-主键约束-唯一约束-非空约束-默认值 约束概述 约束其实就是一种限制,用于修饰表中的列. 通过这种限制来保证表中数据的正确性、有效性和完整性。 有些记录的 name,age,score 字段的值都一样时,那么就没法区分这些数据,造成数据库的记录冗余不唯一,这样就不方便管理数据 哪个字段应该作为表的主键? 主键是给数据库和程序使用的,不是给最终的客户使用的。所以主键有没有含义没有关系,只要不重复,非空就行。 1.2 创建主键 # 主键:PRIMARY KEY # 主键的特点: 1. 唯一约束 UNIQUE 在这张表中这个字段的值不能重复 2.1 唯一约束的基本格式 字段名 字段类型 UNIQUE 2.2 实现唯一约束 具体操作: 创建学生表st7, 包含字段(id, name),name st7, 包含字段(id, name),name这一列设置唯一约束,不能出现同名的学生 mysql> CREATE TABLE st7 ( -> id INT, -> NAME VARCHAR

    7.7K10编辑于 2022-01-17
  • 来自专栏技术小屋-未分类

    MySQL数据库——表的约束(非空约束、唯一约束、主键约束、外键约束)

    目录 1 表的约束 约束,是对表中的数据进行限定,保证数据的正确性、有效性和完整性,约束分为以下几类: 主键约束:primary key 非空约束:not null 唯一约束:unique 外键约束:foreign key 1.1 非空约束:not null 1)在创建表时添加约束: CREATE TABLE stu( id INT, NAME VARCHAR(20) NOT NULL -- name为非空 UNIQUE ); 注意:MySQL中唯一约束限定的列的值可以有多个null 2)删除唯一约束: -- alter table stu modify number varchar(20); 不同于非空约束的删除方法 主键约束:primary key 1)注意: 若某一列添加了该约束,则代表了非空,且唯一; 一张表只能有一个字段为主键; 主键就是表中记录的唯一标识; 2)创建表时添加主键约束 CREATE TABLE 以上仍然存在一个问题,当在员工表中输入不存的部门时,数据依然可以添加,不符合实际,因此,这里就可以通过使用外键约束来解决。 【概念】什么是外键约束

    18.8K21发布于 2020-09-25
  • 来自专栏全栈程序员必看

    MySql数据库约束

    关系型数据库系统和文件系统的一个不同点是,关系数据库本身能保证存储数据的完整性,不需要应用程序的控制,而文件系统一般需要在程序端进行控制。 当前几乎所有的关系型数据库都提供了约束(constraits)机制,该机制提供了一条强大而简易的途径来保证数据库中的数据完整性,一般来说,数据完整性有以下三种形式: (1)实体完整性保证表中有一个主键, 对错误数据的约束   在某些默认设置下,MySql数据库允许非法或不正确的数据的插入或更新,又或者可以在数据库内部将其转化为一个合法的值,如向not null的字段插入一个null值,MySql数据库会将其更改为 0再进行插入,因此数据库本身没有对数据的正确性进行约束。 外键约束 外键用来保证参照完整性,MySQL数据库的MyIsAM存储引擎本身并不支持外键,对于外键的定义只是起到一个注释的作用,而InonoDB存储引擎则完整支持外键约束

    1.7K10编辑于 2022-07-18
  • 来自专栏Y.

    MySQL数据库约束

    UNLL约束 创建表时,可以指定某列不为空: -- 重新设置学生表结构 DROP TABLE IF EXISTS student; CREATE TABLE student (   id INT   name VARCHAR(20)  NOT NULL); 从图片中可以看到ID 与name 在 null 这一列为No,表示不能为空,如果我们选择添加的数据为空则会报错. 2.UNIQUE:唯一约束 ,每次插入或修改都需要先进行查询,如果发现重复数据则会报错. 3 DEFAULT:默认值约束 DROP TABLE IF EXISTS student; CREATE TABLE student (   id INT NOT NULL, name VARCHAR(20) DEFAULT '无名氏'); 4.PRIMARY KEY:主键约束 CREATE TABLE student (   一个表只能有一个主键. 5.FOREIGN KEY:外键约束 CREATE TABLE class ( id INT  PRIMARY KEY auto_increment , name VARCHAR

    58410编辑于 2024-03-20
  • 来自专栏AI科技时讯

    XGB-7: 特征交互约束

    例如,在下图中,红色突出显示的路径包含三个变量: x_1 、 x_7 和 x_{10} ,因此突出显示的预测值(在突出显示的叶节点处)是 x_1 、 x_7 和 x_{10} 之间交互的产物 例如,用户可能希望排除一些交互作用,即使它们表现良好,也受到监管约束的影响。 简单示例 特征交互约束以允许相互作用的变量组的形式表达。 在下图中,左侧的决策树违反了第一个约束([0, 1]),而右侧的决策树遵守了第一个和第二个约束([0, 1],[2, 3, 4])。 用户可能对不同特征之间的关系有先验知识,并在模型构建过程中将其编码为约束。但在指定约束方面也有一些微妙之处。以约束[[1, 2], [2, 3, 4]]为例。 乍一看,这可能看起来像是忽略了指定的约束集,但实际上并非如此。 {1,2,3,4}表示合法的分割特征集。 这导致了特征交互约束的一些有趣影响。

    52900编辑于 2024-05-27
  • 来自专栏Java核心技术图谱:原理·对比·避坑

    数据库圣经--约束

    一.什么是数据库约束数据库约束是指对数据库表中的数据所施加的规则或条件,⽤于确保数据的准确性和可靠性。这 些约束可以是基于数据类型、值范围、唯⼀性、⾮空等规则,以确保数据的正确性和相容性。 约束是关系型数据库的一个重要功能主要作用是保证数据的完整性,也可能理解数据的正确性 (数据本身是否正确,关联关系是否正确) 1、not null空约束 定义表时某列不允许为null时,可以为列添加非空约束 (id, name, sno) values (2, ' 李四 ', '100001'); 3.3查看表结构 Key列显示UNI表示唯⼀约束 注: distinct本来数据库服务器存储的内容中 ,已经有重复的了,展示给用户的时候,展示的是去重的结果 unique 是存的数据就不能重复(重复的数据存不下去),查询的结果自然也是不重复的 4、primary key主键约束 主键约束唯⼀标识数据库表中的每条记录 Key列显示PRI表示主键 desc student; 注意: 当id列的重复时会发生主键冲突 通常把主键列设置为自动增长,让数据库维护主键值 drop table student;

    39410编辑于 2025-12-23
  • 来自专栏学习

    【MySQL】数据库约束

    ✨一、数据库约束 1.什么是数据库约束数据库约束是关系型数据库的一个重要功能,用于确保数据的完整性、一致性和准确性(数据本身是否正确、关联关系是否正确)。数据库约束一般指定在列。 二、数据库约束的分类 1.非空约束(NOT NULL) 1.定义 定义:指定表中的某列不能存储NULL值。例如:在“学生信息表”中,指定学生的姓名不能为空,确保学生基本信息的完整性。 老四 | +----+--------+ 3 rows in set (0.00 sec) -- 自定义id添加元素 mysql> insert into students5 values(7, -------+ | id | name | +----+--------+ | 1 | 一一 | | 2 | 老三 | | 3 | 老四 | | 5 | 王氏 | | 7 -- 数据库要检测插入course_id中的数据,在course表中的id是否存在,不存在则不满足外键约束 mysql> insert into student2(name,course_id) values

    60010编辑于 2025-04-20
  • 来自专栏开源部署

    关于MySQL数据库约束

    数据库约束:      约束是在表上强制执行的数据校验规则,主要用于保证数据库里数据的完整性。      除此之外,当表中的数据存在相互依赖性时,可以保证相关的数据不被删除。 根据约束对数据列的限制,约束可分为如下两类:              单列约束: 每个约束约束一列              多列约束: 每个约束可以约束多个数据列 为数据表指定约束有如下两个时机 :              建表的同时为相应的数据列指定约束              创建表后,以修改表的方式来增加约束 大部分数据库支持下面5中完整性约束: 1.NOT NULL: 非空约束 虽然唯一约束的列不可以出现重复值,但可以出现多个null值,因为在数据库中null不等于null。 同一个表内可创建多个唯一约束,唯一约束也可有多列组合而成。 当为某列创建唯一约束时,MySQL会为该列创建唯一索引, 如果不给唯一约束起名,该唯一约束默认与列名相同。

    1.4K10编辑于 2022-08-16
  • 来自专栏落雨的专栏

    MySQL数据库——数据约束

    概述 数据约束是可选参数,用于约束数据规范,用于保证数据的完整性和一致性。 类型 非空约束 not null,非空约束用于修饰字段不能为控制,不设置默认为null。 默认约束 default,默认约束用于插入值时设置默认值,如果没有值输入,就使用默认值。 主键约束(非空+唯一) primary key ,主键约束要求非空且不可以重复。 唯一约束 unique,唯一约束要求字段中的值不可以重复,'null’值可以重复。 自增约束 auto_increment,自增涨约束字段会自动约束,自增字段不用设置列的数据,会自动生成一个自增的值。 外键约束 foreign key,外键约束用来建立主表与从表的关联关系,为两个表的数据建立连接,约束两个表中数据的一致性和完整性。

    30.3K105编辑于 2022-03-04
  • 来自专栏CSDN 迁移文章

    MySQL数据库基础:约束

    约束的概述 约束是作用于表中字段的规则,用于限制存储在表中的数据 目的:保证数据库中数据的正确性,有效性和完整性 2. 约束的分类 2.1 非空约束 非空约束限制了该字段不能为null, -- 创建student表,约束条件:id不能为null create table student ( id bigint not null, name varchar(50) ); 之后再去尝试插入id为空的数据时就会报错 2.2 唯一约束 -- 创建student表, 约束条件:id 唯一 create table ); 如果已经手动指定了null的话,就按照手动指定的,用户指定的优先级高于默认的优先级 2.4 主键约束 主键约束(primary key)是非空(not null)和唯一(unique)的结合,主键约束的列既是非空的也是唯一的 之后再进行添加数据,并且尝试向主键中添加一个null值 在上面的全列插入写入数据时,不具体指定主键列的值,用null代替,会自动生成id,虽然说,主键是非空且唯一的,但由于设置了自增类型,所以当添加为null时,数据库会根据自增原则

    51310编辑于 2024-10-15
  • 来自专栏python-爬虫

    MYSQL数据库约束类型

    07.14自我总结 MYSQL数据库约束类型 一.主键约束(primary key) 主键约束要求主键列的数据唯一,并且不能为空。主键分为两种类型:单字段主键和多字段联合主键。 ,字段n] 2.自动增长 只能与primary key 联用 语法:字段 数据类型 primary key auto_increment n #n为起始位置,可以不填不填默认从1开始 二.外键约束(foreign (Not Null) 非空约束指字段的值不能为空。 非空约束 语法规则:字段名 数据类型 not null 创建表格后 alter table test modify 段名 数据类型 not null; 四.唯一性约束(Unique) 指定唯一约束 唯一约束 ) 默认约束指定某列的默认值。

    3.7K10发布于 2019-07-24
  • 来自专栏Cyber Security

    【内网安全】横向移动&非约束委派&约束委派&资源约束委派&数据库攻防

    数据库攻防,系统补丁下发执行,EDR定向下发执行等。 redteam.red 靶场 委派攻击分类: 1、非约束性委派 2、约束性委派 3、基于资源的约束性委派 关于约束委派与非约束委派 委派(Delegation)是指将用户或计算机帐户的权限授予其他用户或计算机帐户 &数据库攻防 从外网 Weblogic 打到内网,再到约束委派接管域控 -攻击Weblogic - CVE-2017-10271 这里主要复现约束委派相关内容,初始状态直接上线weblogic 攻击域内成员主机 信息收集加口令加漏洞探针: fscan -h 10.10.10.18 攻击域内数据库主机 - MSSQL+提权 这里是真肝不动了,说下思路 方法一:Proxifier + MDUT + 提权 我代理一直测试连接不上 …… 弱口令 sa/sa爆破 上传后门,执行后门,在Work-7上新建监听器()10.10.10.7),进行提权(使用新建的监听器) 在Work-7上正向连接 connect 10.10.20.18

    1.4K10编辑于 2024-07-18
  • 来自专栏小小程序员——DATA

    【MySQL数据库数据库约束

    ​ 目录Mysql约束(constraint)基本介绍主键约束(primary key)自增长约束(auto_increment)非空约束(not null)唯一性约束(unique)默认约束(default )零填充约束(zerofill)----图片Mysql约束(constraint)基本介绍 MySQL数据库通过约束(constraints)防止无效的数据进入到数据库中,以保护数据的实体完整性 MySQL中主要有六种约束,分别是:主键约束(primary key),非空约束(not null),自增长约束(auto_increment),默认约束(default) ,零填充约束(zerofill 主键约束(primary key) 主键约束相当于唯一约束+非空约束。每个表只能有一个唯一索引。关键字primary key。 <唯一约束名>;默认约束(default) 默认约束用于给表中字段指定默认值,即当在表中插入一条新记录时,如果没有给这个字段赋值,系统会自动为这个字段插入默认值。

    6.8K40编辑于 2022-12-05
  • 来自专栏全栈程序员必看

    sql server可以定义的约束_数据库常见约束

    SQL server常见的约束条件 1.检查只能是男或者女 Sex in(‘男,女’)), Sex =‘男’ or sex =‘女’) 2.在一个范围中间 Sage>0 and sage<120 Sage table 表名 字段 like ’00[0-9][0-9][_][a-z,A-Z][a-z,A-Z][a-z,A-Z]%’and(len(字段)=8) 6.电子邮箱要含有@符号 字段like ‘%@%’ 7. SQL中用check约束一列的首字母为’s’ c字段 like ‘s%’ 8.检查约束前3位和后8位均为数字字符: 字段like ‘[0-9][0-9][0-9]%[0-9][0-9][0-9][0-9 ][0-9][0-9][0-9][0-9]’ 9.如何建立检查身份证的约束,身份证是18位,最后一位还有可能是X select 身份证号 from 表名 where len(身份证号) = 18 and 最后回复时间 TLastClickT 发贴时间 TTime 最后回复时间 必须晚于 发贴时间 并且小于等于当前时间 使用GetDate()函数获取当前时间 设计表 在TLastClickT上右击 选择约束

    1.3K30编辑于 2022-11-08
  • 来自专栏Linux学习~

    MYSQL数据库-表的约束

    零、前言 本章主要讲解学习MYSQl数据库中的表的约束 表的约束 真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束,更好的保证数据的合法性,从业务逻辑角度保证数据的正确性 1、空属性 两个值:null(默认的)和not null(不为空) 数据库默认字段基本都是字段为空,但是实际开发时,尽可能保证字段不为空,因为数据为空没办法参与运算 示例:创建一个班级表, 索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序 数据库使用索引以找到特定值,然后顺指针找到包含该值的行。 这样可以使对应于表的SQL语句执行得更快,可快速访问数据库表中的特定信息 7、唯一键 一张表中有往往有很多字段需要唯一性,数据不能重复,但是一张表中只能有一个主键:唯一键就可以解决表中有多个字段需要唯一性约束的问题 示例: 8、外键 外键用于定义主表和从表之间的关系:外键约束主要定义在从表上,主表则必须是有主键约束或unique约束

    9.6K30编辑于 2022-11-15
  • 来自专栏落雨的专栏

    MySQL数据库——外键约束

    概述 外键约束确保数据的有效性。 height decimal(5,2), ->foregien key(name) reference class(name) ->); #创建students表,对其中name字段设置外键约束 修改表时添加外键约束 ALTER TABLE <数据表名> ADD CONSTRAINT <外键名> FOREIGN KEY(<列名>) REFERENCES <主表名> (<列名>); alter 删除外键约束 ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>; alter table students drop foregien fk_name; #最后是外键约束名 ,不是设置外键的字段名 查看外键约束 show create table <表名>; #查看constraint后的内容,就是外键约束

    36.5K95编辑于 2022-03-07
  • 来自专栏可涵的从小白到大牛的征程

    MySQL数据库约束详解

    1.表的约束的概念 表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束本质是通过技术手段,倒逼程序员,插入正确的数据。 反过来,站在MySQL的视角,凡是插进来的数据,都是符合数据约束的! 约束的最终目标:保证数据的完整性和可预期性! 下面来介绍一些主流的约束。 2.空属性 两个值:null(默认的)和not null(不为空) 数据库默认字段基本都是字段为空,但是实际开发时,尽可能保证字段不为空,因为数据为空没办法参与运算。 站在正常的业务逻辑中: 如果班级没有名字,你不知道你在哪个班级 如果教室名字可以为空,就不知道在哪上课 所以我们在设计数据库表的时候,一定要在表中进行限制,满足上面条件的数据就不能插入到表中。 student; +------+------+ | id | name | +------+------+ | 01 | aaa | | NULL | bbb | +------+------+ 7.

    1.5K00编辑于 2025-02-22
领券