龙空技术网

数据库|基于T-SQL添加默认约束、外键约束、内连接查询

雷工笔记 76

前言:

而今我们对“sql添加检查约束”都比较注意,姐妹们都想要分析一些“sql添加检查约束”的相关文章。那么小编也在网络上汇集了一些关于“sql添加检查约束””的相关内容,希望兄弟们能喜欢,同学们快快来了解一下吧!

哈喽,你好啊,我是雷工!

前边学习了基于T-SQL48_47.基于T-SQL添加数据、CRUD操作、标识列详解:

数据库|基于T-SQL向数据库数据表中添加、修改、删除数据

接下来接着学习基于T-SQL添加默认约束、外键约束,内连接查询,以下为学习笔记。

01 默认约束

默认约束是用于指定列在插入数据时的默认值。

当向数据表中插入一行数据时,如果没有为某个列指定具体的值,那么该列将使用其默认约束定义的默认值。

在创建表时定义默认约束:

CREATE TABLE 表名(

列1 数据类型 DEFAUL 默认值,

……

);

例如:在作者表中为地址添加默认值“地址不详”

代码:

create table Author( AuthorId int identity(10001,1) primary key,--作者编号,主键 LoginAccount nvarchar(50)not null,--登录账号 LoginPwd varchar(18)check(len(LoginPwd)>=8 and len(LoginPwd)<=18) not null,--登录密码 AuthorName varchar(20)not null,--作者名字 Phonenumber char(11)not null,--手机 NowAddress nvarchar(100)default('地址不详')--地址)go

然后再次向数据表中添加数据时,如果有地址信息替换为对应地址信息,没有指定地址信息则显示“地址不详”。

测试结果如下:

02 外键约束

外键约束是数据库设计中的概念,用于确保有关系的两个表数据的一致性和完整性。

在关系数据库中,外键是一个列或列集合,它指向另一个关联表中的主键或唯一键。

作用:当我们在外键表中,添加数据的时候,如果和主表建立引用关系,则会自动的从主表中对应的字段中查询数据是否一致,不一致的话会拒绝插入。

保证数据一致。

示例:

2.1、创建账号类型表:

代码如下:

--账号类型表if exists(select*from sysobjects where name='AccountType')drop table AccountTypegocreate table AccountType( TypeId int identity(10,1)primary key,--类型编号 TypeName varchar(20)not null--类型名称)go

2.2、向账号类型表中添加【科技】、【美食】、【综合】三个类型

代码如下:

--添加账号分类insert into AccountType(TypeName)values('科技'),('美食'),('综合')

查询账号类型表的信息

代码如下:

select*from AccountType

2.3、查询结果:

2.4、创建账号表

创建账号表,其中TypeId列为外键,指向账号分类表的TypeId列

代码如下:

--账号表if exists(select*from sysobjects where name='Account')drop table Accountgocreate table Account( AccountId int identity(10001,1) primary key,--账号编号 AccountName varchar(20)not null,--账号名称 AccountContent nvarchar(500)not null,--账号简介 originality int not null,--原创数 TypeId int references AccountType(TypeId) not null--外键约束)go

2.5、向账号表添加信息

当添加的信息中TypeId值(9)在账号类型表中不存在时,插入报错。

代码及执行结果如下:

当添加的信息中TypeId值为11,在账号类型表中存在时,则可正常插入。

代码及执行结果:

查询插入结果为:

03 内连接查询

通过inner join连很查询两个表的信息。

代码示例:

select AccountName,AccountContent,originality,Account.TypeId,AccountType.TypeName from Accountinner join AccountType on Account.TypeId=AccountType.TypeId

查询结果:

04、后记

以上为基于T-SQL添加默认约束、外键约束、内连接查询相关的基础内容,

有对相关内容感兴趣的小伙伴,欢迎点个关注,我们一起学习进步。

标签: #sql添加检查约束