SQL数据库语言基础之SqlServer数据表的六大约束(主键、外键、检查、非空、唯一性、默认值约束)的创建

从零构建智能ai语音助手:ESP32s3+Python+大语言模型实战指南 本文详细介绍了基于ESP32S3硬件和Python后端的智能语音助手系统开发指南。系统采用ESP32S3采集语音,通过WebSocket实时传输到Python后端处理,利用大语言模型实现自然语言理解和意图识别,再通过TTS合成语音返回。文章从系统架构、工作流程、技术实现(包括OPUS编码、WebSocket通信、ESP32音频处理)等方面进行了详细讲解,并提供了分阶段学习路线和常见问题解决方案。该项目展示了物联网技术与AI技术的融合应用,相比传统语音系统具有更高的灵活性和智能性,为开发者提供了完整的实现方案 阅读详情

一、主键约束(primary key)

1、主键说明
(1)约束唯一标识数据库表中的每条记录
(2)主键必须包含唯一的值
(3)主键列不能为空
(4)每个表都应该有个主键,但只能有一个主键

2、约束作用
主键约束相当于NOT NULL + UNIQUE,确保某列(或多个列的结合)有唯一标识,有助于更快地找到一个表中特定的记录。

3、在管理器创建主键
1-3-1
4、SQL语句创建、删除主键
注意:创建之前,需要设定为主键的列必须是非主键。

--添加2个主键约束(联合主键):
--stu_info是表名
--pk_student约束名
--RRIMARY KEY约束类型为主键约束
--s_num学号、s_name姓名为约束的列
ALTER TABLE stu_info
ADD constraint pk_student PRIMARY KEY
(
	s_num, s_name
)

--删除主键:
--pk_student是需要删除的主键名
ALTER TABLE stu_info 
DROP constraint pk_student

二、外键约束(foreign key)

1、外键说明
(1)一个表中的foreign key 指向另一个表的primary key
(2)foreign key约束用于预防破坏表之间连接的动作
(3)foreign key约束也能防止非法数据插入外键列,因为它必须是指向的那个表的值之一。

2、约束作用
用于保证一个表中的数据匹配另一个表中的值的参照完整性。当指定了表1中某列为外键,并且其reference为表2中的某列(该列必须是UNIQUE约束的),就说明表1中的外键列的取值必须要在其所指向的列中取得。通过这样的约束,来预防破坏表之间连接的行为,也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。

3、管理器创建外键

在主键上右击——>关系——>添加——>在下拉列表里选择需要设定的主键和外键。
注意:主键和外键的类型必须相同,若外键为其他表中的列,则必须为其他表中的主键。
2-3-1

2-3-2

4、SQL语句创建、删除外键
(1)格式
foreign key (列名) references 主表名(主表列名)
alter 表名 drop constraint 外键约束名

(2)练习测试

--为表stu_info中的s_score创建外键为表Table_1中的ss_score
--fk_student外键约束名
ALTER TABLE stu_info
ADD constraint fk_student FOREIGN KEY(s_score)
REFERENCES Table_1(ss_score)

--删除外键关系
ALTER TABLE stu_info 
DROP constraint fk_student

三、检查约束(check)

1、检查说明
(1)check约束用于限制列中的值的范围
(2)如果对个单个列做check约束,那么该列只可以输入特定数值
(3)如果一个表定义check约束,那么此约束会在特定的列对值进行限制

2、约束作用
保证列中的值符合指定的条件。如果对单个列定义 CHECK 约束,那么该列只允许特定的值;如果对一个表定义 CHECK 约束,那么此约束会基于行中其他列的值在特定的列中对值进行限制。

3、管理器创建检查约束
右击——>CHECK约束——>然后添加需要的条件语句
3-3-1
3-3-2
要求分数小于等于100分:
3-3-3

4、SQL创建、删除检查约束
(1)语法

1、sex varchar(2) not null check(sex='男' or sex='女') 限制sex的性别只能是男或者女
2、alter table table_name add check(列名>0)           向已有的列加入check约束
3、alter table table_name drop constraint check约束名  删除约束       约束名可以用 sp_help table_name查看

(2)练习测试

--创建检查约束:性别是男或女
ALTER TABLE stu_info
ADD constraint ck_student CHECK(s_sex='男' or s_sex='女')

--分数大于0且小于100
ALTER TABLE stu_info
ADD constraint ck_student_2 CHECK(s_score>=0 and s_score<=100)

--删除检查约束
ALTER TABLE stu_info 
DROP constraint ck_student

四、非空约束(not null)

1、非空说明
not null 非空约束,即不能为空,强制列不接受空值;
null 就是可以为空。
例:创建表时,列名 varchar(6) not null

2、约束作用
指示某列不能存储NULL值。

3、管理器中
打钩就是可为空,没有打钩就是不能为空(即为非空约束)。
4-3-1

4、SQL语句创建

--把表stu_info中的s_score列不能为空
ALTER TABLE stu_info
ALTER column s_score numeric(4,2) not null

五、唯一性约束(unique)

1、唯一性说明
(1)约束唯一标识数据库表中的每条记录
(2)unique和primary key都为数据提供了唯一性约束
(3)primary key 拥有自动定义的Unique约束

2、唯一性作用
指示某列中每一行的值必须唯一,不可重复。
注意:每个表中只能有一个primary key约束,但是可以有多个Unique约束。

3、管理器中
右击——>索引/键——>选择唯一键,则设定为了唯一性约束。
5-3-1

4、SQL语句创建
(1)语法

1、unique(column_name)
2、alter table table_name add constraint 约束名 unique(column_name)   --增加表中的约束
3、ALTER TABLE 表名 DROP constraint 约束名    --删除约束 

(2)测试练习

--把表stu_info中的s_name列设置为唯一键(唯一性约束)
ALTER TABLE stu_info
ADD constraint un_student UNIQUE(s_name)

--删除s_name的 唯一性约束
ALTER TABLE stu_info 
DROP constraint un_student 

六、默认值约束(default)

1、默认值说明
(1)default约束用于向列中插入默认值
(2)如果没有规定其他的值,那么会将默认值添加到所有的新记录中

2、约束作用
规定没有给列赋值时的默认值。

3、SQL语句创建默认值

1、列名 varchar(10) default '张三'                       name默认插入张三的名字
2、systime date default gatedate()                       插入时间的默认值   getetime()函数为时间的默认值
3、ADD constraint 约束名 default '默认值' for 列名    --向已有列名中插入默认值
4、alter table 表名 drop constraint 约束名          --删除默认约束

4、测试练习

--给表stu_info中的s_score列添加默认值为0.00
ALTER TABLE stu_info
ADD constraint de_student default'0.00' for s_score
Apk脱壳圣战之---脱掉“梆梆加固”的保护壳 一、前言 现如今Android用户的安全意识不是很强,又有一些恶意开发者利用应用的名字吸引眼球,包装一个恶意锁机收费的应用,在用户被骗的安装应用之后,立马手机锁机,需要付费方可解锁。这样的恶意软件是常让人痛恨的。所以本文就用一个案例来分析如何破解这类应用,获取解锁密码,让被骗的用户可以找回爽快! 二、分析软件锁机原理 本文用的是一款叫做:安卓性能激活.apk,关于样本apk文件后面会... 阅读详情

相关推荐

Remote ID的调制解调FPGA实现

Remote ID源于航安全需求,例如在无人机密集区域实现设备跟踪和防碰撞。它类似于航领域的ADS-B系统,但针对低飞行器。Remote ID系统通常工作在特定频段(如2.4 GHz或5.8 GHz),通过无线链路广播数据包,包含设备ID、经纬度、高度和速度等信息。调制解调过程确保这些数据在噪声环境中可靠传输。例如,标准如ASTM F3411定义了Remote ID的协议框架,其中调制解调是关物理层组件。

yulongfenghu的博客 1468

MySQL六大约束

MySQL六大约束分为 主键primary key,not null,默认default, 唯一unique, foreign key, 检查check

HuanLe.的博客 1144

PINN驱动的3D不可压缩流场重建——从稀疏2D2C观测到完整物理场反演——含源码实现

多尺度融合策略在此发挥作用:高分辨率的2D2C数据用于约束平面内的精细结构,而低分辨率的3D3C数据提供第维度的粗尺度信息。迁移学习架构在此发挥关作用。这种策略在湍流封闭模型构建中尤为有效,其中RANS提供的平均流场与DNS的雷诺应力数据融合,显著提升了分离流的预测精度。在稀疏数据场景下,注意力权重根据观测数据的分布动态调整,强化数据缺失区域的物理约束,同时避免过拟合于观测点。这种机制与自适应采样的结合,实现了计算效率与重建精度的平衡,在仅保留约百分之十关节点的情况下,仍能保持高物理一致性。

u012133341的博客 106

SQL六大约束

1.主键约束(唯一约束 + 约束) 2.约束 3.唯一约束(允许一行数据为) 4.默认值约束 5.检查约束 6.约束 create table student( --字段名 数据类型 约束 (一般在此只加约束) stuId int not null, stuName varchar(20) not null, stuAge int not null, stuSex bit not null, stuTel varchar(13) not...

m0_67655980的博客 2090

SQL新增有默认值字段的字段

语法: ALTER TABLE ADD DEFAULT 示例:在T1表添加类型为INT不为默认值为0的F1字段 ALTER TABLE T1 ADD F1 INT NOT NULL DEFAULT 0

qq_16425237的博客 7623

SQL sever中的约束

SQL sever中的约束

m0_71406734的博客 5917

SQLServer默认值约束

1. 创建表时指定默认值 create table dbo.t1 ( id1 INT DEFAULT 5 ) 2. 创建表时指定默认值,并指定约束名 create table dbo.t1 ( id1 INT CONSTRAINT df_t1_id1 DEFAULT 5 ) 3. 创建表时没有指定默认值,通过sql命令添加默认值 create table dbo.t1 ( id

duanbeibei的专栏 2万+

SQL server 2016 主键约束的作用是什么?

SQL Server 2016 中的主键约束的作用是确保表中每行的数据都是唯一的。当在表中插入新行时,主键约束检查是否已经存在具有相同主键值的行,如果存在,则不允许插入新行。这有助于避免在表中出现重复数据的情况。此主键约束还可以用于将表与其他表关联起来,这有助于保证数据的完整性。 ...

weixin_35755823的博客 387

SQL Server数据库六大约束

一、数据完整性设计 数据完整性就是确保数据库中数据的一致性和正确性 数据完整性包括数据的完整性和参照的完整性 二、SQL Server数据完整性 PRIMARY KEY约束 FOREIGN KEY约束 UNIQUE约束 CHECK约束 DEFAULT约束 允许SQL Server六大约束 约束名称 主键约束(PRIMARY KEY) 唯一约束(UNIQUE) 约束(F...

路虽远,行则必至! 1854

数据库SQL Server零基础学起你必会(二)表和约束概念详解,用SQL命令建表和约束

SQL Server零基础学起你必会(二)利用SQL命令建表和约束约束主键(PK)约束(FK)约束相关知识链接 利用SQL命令建表和约束 约束 对一个表中属性操作的限制 主键(PK)约束 不允许重复元素 (FK)约束 含有自带的表为表 相关知识链接 数据库 SQLServer 视频教程全集(99P)| 22 小时从入门到精通 数据库知识点 一个小时上手SQL sql语句,你肯定会...

一拳Marx 2580

SQL Server 2016 [创建和删除约束]

约束类型: 1、 约束类型有:1.主键约束(PK),2.约束(),3.唯一约束(UQ),4.检查约束(CK),5.默认约束(DF),6.约束(FK) 2、 约束名的取名规则推荐采用:约束类型_约束列,如PK_Userld 3、 约束的英文名称为:主键约束(Primary Key),唯一约束(Unique key), 默认约束(Default Key),检查约束(Check Key),约束(Foreign Key) 六大约束说明: 1.primarykey:主键,用于保证该字段的值.

1338

sql-server-六大约束

1.主键约束(唯一约束 + 约束) 2.约束 3.唯一约束(允许一行数据为) 4.默认值约束 5.检查约束 6.约束 create table student( --字段名 数据类型 约束 (一般在此只加约束) stuId int not null, stuName varchar(20) not null, stuAge int not null, stuSex bit not null, stuTel varchar(13) not...

Zx52840的博客 856

SQL Server数据库表的六大约束

http://blog.sina.com.cn/s/blog_8f28deb70100xacs.html Server数据库表的六大约束代码设定和删除" title="SQL Server数据库表的六大约束代码设定和删除" style="margin:0px; padding:0px; border:0px; list-style:none"> 数据库表有六大约束分别为:

NRGAGA的专栏 4099

数据类型六大约束

本期重点: 1.表的两种创建方法 2.表的相关约束 精度 小数位数 长度 2233.1 5 1 6 长度(字节数):12a哈 5 文本数据类型:Char 固定长度 Varchar可变长度 Text(超过8000个字符) 存储上文本信息 日期和时间: Datetime 数字类型:int float(小数) 货币数据类型:Money Bit数据类型: Bit存储布尔数据类型 一.表的两种创建 ...

m0_52681702的博客 902

SQL Server数据库建表以及使用方法

一 , 连接数据库引擎。 二 , 身份验证选择windows或者SQL Server身份验证连接。 ,选择数据库,新建数据库。 四, 输入 数据库名称,下面初始大小,自动增长,路径可以更改, 假设该数据库初始大小8MB,当该数据超过初始大小时自动增大(64)MB, 也就是现在可以放72MB,可以设置封顶当该数据到达设置的数据大小时将不再自动增长。 五, 找到新建的数据库双击,选择表,新建,表。 六, 这里设定了序号和名字,学生还有性...

m0_71147107的博客 3383

3 MYSQL中的六大约束是什么_在SQL Server2012中有六种约束类型,分别是约束主键约束约束( )( )( ...

【单选题】《牡丹亭》这部戏剧中反映了什么感情?()【单选题】7 、在一座办公大楼或某一小区内建设的计算机网络一般是___。【单选题】SQL Server 2012 的字符型系统数据类型主要包括( )。【判断题】汇总记账凭证处理程序适合规模小、业务量少的单位。【判断题】对于不真实、不合法的原始凭证,会计人员有权不予接受【单选题】用于自动产生唯一的系统值的列属性是( )。【多选题】不能用作原...

weixin_32100383的博客 644

关于SQL Server数据表的五种约束

1、主键约束(PRIMARY KEY) 主键约束可以在表中定义一个主键值,它可以唯一确定表中每一条记录,每个表中只能有一个主键约束(只能有一个主键约束的意思并不是说受主键约束的列只能有一个),并且受主键约束的列不能为值。如果主键约束定义在不止一列上,则某一列中的值可以存在重复,但是受主键约束的所有列的组合值必须唯一。 2、唯一性约束(UNIQE) 唯一性约束确保在主键列中不输

Aierbude的博客 2659

数据库SQL创建表/修改列/设置主键/添加数据/查询数据/添加

代码: use 数据库理论习题 create table SPJ表( SNO varchar(20), PNO varchar(20), JNO varchar(20), QTY varchar(20) ) go insert into SPJ表 (SNO,PNO,JNO,QTY) values ('S1','P1','J1',200), ('S1','P1','J3',100), ('S1','P1','J4',700), ('S1','P2','J2',200), ('S...

qq_49054042的博客 974

SQLServer中的常见约束

一、什么是约束? 为了保证数据的一致性和完整性,SQL规范以约 束的方式对表数据进行额的条件限制。 • 约束是表级的强制规定 • 可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通 过 ALTER TABLE 语句)。 二、约束分为有六种: NOT NULL:,该字段的值必填 UNIQUE:唯一,该字段的值不可重复 DEFAULT:默认,该字段的值不用手动插入有默认值 CHECK:检查,mysql不支持 PRIMARY KEY:主键,该字段的值不可重复并且

weixin_49772216的博客 3339

SQLServer之FOREIGN KEY约束

FOREIGN KEY约束添加规则 1、约束并不仅仅可以与另一表的主键约束相链接,它还可以定义为引用另一个表中 UNIQUE 约束的列。 2、如果在 FOREIGN KEY 约束的列中输入 NULL 值,则此值必须在被引用列中存在;否则,将返回违反约束的错误信息。若要确保验证了组合约束的所有值,请对所有参与列指定 NOT NULL。 3、FOREIGN KEY 约束仅能引用位...

weixin_30588675的博客 441

SQLserver使用sql语句创建主键,唯一约束,自增

SQL Server 中,可以通过 SQL 语句创建表时或在现有表上添加约束,如主键(PRIMARY KEY)、(FOREIGN KEY)、唯一约束(UNIQUE)和自增(IDENTITY)。以下是如何使用 SQL 语句来实现这些约束的示例。

愿你历尽千帆,归来仍是少年。 2996

SQLserver中添加约束

默认值default约束:Alter table 表名 add constraint 自定义约束名称 default('默认值') for 添加约束的列名。当添加多个主码时:列1 char(4),列2 char(4),primary key(列1,列2)默认值约束:create table 表名(列1 nchar(1) default '默认值')check约束:create table 表名(列1 char(4) check(约束条件))(2)已经创建表之后添加约束

qq_70083833的博客 6711

Earth-satellite design_satellite_optisystem_光通信_自由光通信_Optisystem

基于optisystem软件搭建的一种自由间光通信系统仿真。

智能学习平台-基于springboot智能学习平台系统设计与实现

智能学习平台功能描述智能学习平台是一个结合人工智能与教育技术的综合学习环境,旨在为学生、教师和教育机构提供个性化、互动化的学习体验。以下是该平台的主要功能描述:1. 用户注册与管理学生、教师及管理员可以通过电子邮件或社交账号进行注册。支持个人信息、学习记录和权限设置的管理。2. 个性化学习路径根据用户的学习进度、兴趣及能力,自动生成个性化学习计划。提供智能推荐系统,根据用户历史行为推荐相关课程和资源。3. 课程与资源管理提供丰富的在线课程,包括视频、音频、文档等多种格式。允许教师创建、上传和管理自己的课程内容。4. 实时课堂互动支持在线直播课堂,教师与学生可进行实时互动。提供问答、投票和讨论板块,鼓励学生参与课堂讨论。5. 自适应评测系统采用自适应测试技术,根据学生的回答动态调整题目难度。提供即时反馈和详细解析,帮助学生了解知识掌握情况。6. 学习分析与报告提供学习进度跟踪和效果评估工具,生成个性化学习报告。教师可以查看学生的学习数据,针对性地提供支持和指导。7. 社交学习社区建立学习小组和论坛,促进同学之间的交流与合作。支持分享学习经验、

上一篇: SQL数据库语言基础之SQL Server自带数据类型、自定义数据类型与使用、创建修改数据表
下一篇: SQL数据库语言基础之SqlServer登陆账户、数据文件的导入导出、备份与恢复
鸿蒙Next
鸿蒙Next 优质创作者: python技术领域 优质创作者: python技术领域
博客等级 码龄7年 2万+粉丝 300原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鸿蒙Next

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值