Sql实践怎么规范sql数据和五大约束.十三首先和大家说一下我们接下来与实践相关的内容。大家如果是从事数据库的话有三个发展的方向分别为:管理,开发,智能分析<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

DBA又分为初级,中级,高级,不满大家我学完sql也只能达到初级和中级之间的水平。

安全行和高可用性

安全性又分为:

1.     用户管理

2.     存储安全:备份

3.     网络传输行

4.     数据加密

怎么规范sql数据

1.     域完整性:域:字段值的取值范围。

2.     实体完整性:实体:记录,保证记录的完整性。

3.引用完整性:保证数据一贯的一致性。

约束:

1.     defanlt 默认

2.     check 检测

3.     primary key 主键

4.     foreign key 外键

5.     unique  唯一

1.defanlt 约束

目的:将一个字段最有可能出现的值设置为defanlt约束

1.通过图形界面将年龄的默认值设置为20

yuangong表上右击修改表,在年龄的默认值或绑定里写入20.操作完成后保存并退出。
Sql实践怎么规范sql数据和五大约束.十三
测试一下给yuangong表插入一条记录,

Sql实践怎么规范sql数据和五大约束.十三
如下图所示因为约束的原因年龄为20

Sql实践怎么规范sql数据和五大约束.十三
2.通过命令在新建表是将性别的默认值设置为男。

语法为:

Create table t1

(姓名 varchar8),性别 char2),default ‘男’, 年龄 int 籍贯 varchar30))

Sql实践怎么规范sql数据和五大约束.十三
测试给t1表中插入几条信息。插入完成后进行查看如下图约束设置成功。

Sql实践怎么规范sql数据和五大约束.十三
2.通过命令在现有表上增加默认值约束。

语法为:alter table 表名 add constraint 默认名 default for 字段名

将年龄的默认值设置为22.

Sql实践怎么规范sql数据和五大约束.十三
插入一条记录进行测试,插入完成后进行查看、如下图所示约束增加成功。

Sql实践怎么规范sql数据和五大约束.十三
2.check 约束

目的:限制字段的取值范围。

例:用图形界面将nan表的年龄取值范围限制为18-60.

首先在nan表上右击修改,在年龄字段上右击找到check约束打开,然后点击添加,添加后点击表达式空白处会出来一个()这个按钮点击,最后写入,年龄>=18 and 年龄<=60

Sql实践怎么规范sql数据和五大约束.十三
完成后点击确定如下图,最后保存此操作。

Sql实践怎么规范sql数据和五大约束.十三
测试向nan表中插入一条年龄为67的记录。如下图所示check约束起作用了。

Sql实践怎么规范sql数据和五大约束.十三
2.通过命令在新建表时将年龄的范围限制在18-60新建表t2

语法为:

Create table t2

id int ,uname varchar(8),sex int, constraint ck_age check (age>=18 and age<=60)

Sql实践怎么规范sql数据和五大约束.十三
来在进行测试一下,t2表插入一条年龄为17的记录。如下图所示插入失败。

Sql实践怎么规范sql数据和五大约束.十三
3.在现有表上增加check约束,将性别的取值只能是男或者女。

语法为:alter table 表名 add constraint 约束名 check (表达式)

Sql实践怎么规范sql数据和五大约束.十三
测试插入一条记录,假如性别为中性。如下图插入失败。

Sql实践怎么规范sql数据和五大约束.十三
1.删除约束

例通过命令删除约束

语法为:

Alter table 表名 drop constraint 约束名

Sql实践怎么规范sql数据和五大约束.十三
测试看约束是否已删除。如下图所示插入成功,check约束删除成功。

Sql实践怎么规范sql数据和五大约束.十三
2.查看约束。

Sp_helpconstraint 表名

例:查看t1表有那些约束。

Sql实践怎么规范sql数据和五大约束.十三
3.primary key 主键约束。

1.用命令新建表是创建主键。

第一种方法:

Create table t3

uname varchar8not null primary keysex char2),age int

Sql实践怎么规范sql数据和五大约束.十三
第二种方法:

Create table t4

uname varchar8not nullsex char2),age intprimary keyuname))

Sql实践怎么规范sql数据和五大约束.十三
第三种方法:

Create table t5

uname varchar8 not nullsex char2,age int, constraint pk_t5 primary key (uname)

Sql实践怎么规范sql数据和五大约束.十三
单一的主键三种方法都可以用,复合主键只能用第二,第三种方法。

1:在现有表上增加主键,给t2表增加主键。

语法为:

Alter table 表名 add constraint 约束名 primary key(字段名)

Sql实践怎么规范sql数据和五大约束.十三
想要把字段名改为主键是不能为空的,

4.unique 约束

唯一性约束一个字段的值不允许出现重复。、

例:用图形界面将t2表中uname设置为唯一性约束。点击修改表在uname上右击找到索引/键点击,添加在是唯一的把否该为是。完成后保存。

Sql实践怎么规范sql数据和五大约束.十三
2.用命令在新建表时将uname设置为唯一性约束。创建t6表、

语法为:

Create table t6

id int not null,uname varchar(8) not null,sex char(2),age int, constraint unique_uname unique(uname)

Sql实践怎么规范sql数据和五大约束.十三
测试插入几条记录。如下图所示唯一性约束设置成功。

Sql实践怎么规范sql数据和五大约束.十三
例将id设置为唯一性约束。

语法为:

Alter table 表名 add constraint 约束名 unique(字段名)

Sql实践怎么规范sql数据和五大约束.十三
测试如下图所示插入失败,唯一性约束设置成功。

Sql实践怎么规范sql数据和五大约束.十三
5.foreign key 外键

目的:构建表间关系。

首先创建两个表,部门表和员工表。

Sql实践怎么规范sql数据和五大约束.十三
Sql实践怎么规范sql数据和五大约束.十三
外键:将一个表的主键增加到另一个表中,以此键来构建起两个表之间的关系,那么这个字段就称为另一个表的外键。

表间关系的好处:

1.     减少冗余数据。

2.     实现数据约束。

3.     实现级联更新,级联删除。

然后给这两个表中插入记录,如下图。

Sql实践怎么规范sql数据和五大约束.十三
接下来就要给两个表建立表间关系,把部门表的主键部门id放入到员工表中去。操作完成后保存。

Sql实践怎么规范sql数据和五大约束.十三
然后打开员工表把部门id的信息插入。

Sql实践怎么规范sql数据和五大约束.十三
以上操作完成后的两个表。

Sql实践怎么规范sql数据和五大约束.十三
最后在数据库关系图上右击新建数据库关系图。选中两个表点击添加。

Sql实践怎么规范sql数据和五大约束.十三
然后在部门表里选中部门id拖到员工表里部门id上,放上去会出现如下图情况,点击确定。

Sql实践怎么规范sql数据和五大约束.十三
下一步直接点击确定即可。

Sql实践怎么规范sql数据和五大约束.十三
把更新规则和删除规则改为层叠。

Sql实践怎么规范sql数据和五大约束.十三
保存关系表名为:diagram_0
Sql实践怎么规范sql数据和五大约束.十三
出现如下图后点击是进行保存。
Sql实践怎么规范sql数据和五大约束.十三
完成后测试一下级联更新。如下图所示我们把部门表里的部门id2改为22

Sql实践怎么规范sql数据和五大约束.十三
级联更新成功,员工表里的部门id也更新了。

Sql实践怎么规范sql数据和五大约束.十三
接下就要测试级联删除。

把部门表里的部门id22的删除,

Sql实践怎么规范sql数据和五大约束.十三
如下图所示级联删除成功。

Sql实践怎么规范sql数据和五大约束.十三

接下来看用命令怎么创建外键。先创建两个表。

create table 部门表

(

部门id int not null primary key,

名称 varchar(8),

电话 varchar(11)

)

create table 员工表

(

员工id int not null primary key,

姓名 varchar(8),

性别 char(2),

年龄 int

部门id int foreign key references 部门表(部门id)

)

Sql实践怎么规范sql数据和五大约束.十三
显示员工表的约束。

Sql实践怎么规范sql数据和五大约束.十三
例:在现有的表上增加外键约束。

Sql实践怎么规范sql数据和五大约束.十三
创建表间关系。

语法为:

alter table 员工表 add constraint fk_部门id

foreign key(部门id)references 部门表(部门id) on

delete cascade on update cascade

Sql实践怎么规范sql数据和五大约束.十三
测试和上面一样我就不做了。