约束:对一个表中属性操作的限制 下面建一个简单的学生表,快跟着敲一遍: 数据库中单引号里面是字符串,双引号里是数据的名字 运行新表时带着该代码一起运行即可 和约束的关系 建立班级,学生,课程的具有多对多关系的表: SQL Server零基础学起你必会(一)图形化界面建表SQL Server零基础学起你必会(二)表和约束概念详解,用SQL命令建表和约束
利用SQL命令建表和约束
六大约束
项目
Value
主键
(PK)约束不允许重复元素,避免数据冗余
外键
(FK)约束从语法上保证了本事物所关联的其他事物一定存在
check约束保证事物的属性在合法的范围内
default约束保证事物的属性一定会有一个值
unique唯一性约束不允许重复,但允许为空,
SQLServer不允许多列为空
实战
指令合集
功能
操作
图例
建表
createtable+表名
主键
primarykey
约束条件
check(...and...)
notnull非空
nvarchar(100)
n表示国际化支持汉字,
vary变量,
char表示字符,
(100)表示最大容量
default(默认值)默认为
...
insert插入
insertinto+表名
+(需添加的列)
values+(添加的信息)
实例流程
我们会遇到这样的问题,老代码运行完后新代码加进去会报错,显示已存在
IF OBJECT_ID('student') IS NOT NULL DROP TABLE student
notnull:默认
null,用户不给该字段赋值,则字段默认值为
nullcreate table dept2 ( dept2_id int primary key, dept2_name nvarchar(100) not null, dept2_address nvarchar(100) ) create table emp2 (--不能写成{ emp2_id int constraint pk_id_hahaha primary key,--定义主键同时定义了名字 emp2_name nvarchar(20) not null , --n表示国际化支持汉字,vary变量,char表示字符,(20)最大20个 emp2_sex nchar(1), dept2_id int constraint fk_dept_id_heihei foreign key references dept2(dept2_id),--列名,类型,约束,约束的名字,外键约束,外键是哪个表的 ) IF OBJECT_ID('student') IS NOT NULL DROP TABLE student create table student ( student_id int primary key, student_sal int check (student_sal>1000 and student_sal<8000), student_sex nvarchar(2) default('男'), student_name nvarchar(200) unique ) insert into student(student_id,student_sal,student_name) values (1,2000,'王五'); insert into student values (2,4000,'女','张三') insert into student values (3,6000,'男','李四');
黄金三句:
关系
分类
Value
一对一
即可以把表A的主键充当B的外键,也可以把表B的主键充当表A的外键
一对多
把表A的主键添加到表B来充当外键,或者说在多的一方添加外键
多对多
必须通过单独的一张表来表示
实战
班级一张表,教师一张表,班级和教师的关系也是一张表。指令合集
功能
操作
图例
约束及约束的命名
constraint+命名
外键及来源表格
foreignkeyreferences
实例流程
--班级表 create table class ( class_id int primary key, class_num int not null, class_name nvarchar(100) ) --教师 create table teacher ( teacher_id int primary key, teacher_name nvarchar(200) ) drop table class_teacher_mapping--没写完可以加这句话 --第三张表格,来模拟班级和教师的关系 create table class_teacher_mapping (class_id int constraint fk_class_id foreign key references class(class_id), teacher_id int foreign key references teacher(teacher_id), course nvarchar(20), constraint pk_class_id_teacher_id primary key (class_id,teacher_id,course) )
查看数据关系的建立
关系图
总结
SQLServer用的是纯命令,没有流程,把顺序,选择和循环给删掉了,可以用可流程控制的
TLSQL(无法跨平台)解决或者用高级语言对数据进行处理,再写入数据库主键
id,而要定义成表名
Id或者表名_id外键
null
先删主键表还是外键表
相关知识链接
数据库入门(一)范式理解:1NF,2NF,3NF,BCNF,4NF详析
数据库 SQLServer 视频教程全集(99P)| 22 小时从入门到精通
数据库知识点
一个小时上手SQL
sql语句,你肯定会听懂的
(重要顺序从上到下)
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算