【实验二】【创建表并输入数据】

2023-11-20


在实验一的基础上:数据库XSCJ,初始大小20MB,自动增长/最大大小1MB,收缩百分比50%

目的表

XSQK–学生情况

在这里插入图片描述

KC–课程

在这里插入图片描述

XS_KC–学生_课程

在这里插入图片描述

T-SQL创建表

1)新建查询

单击“标准”工具栏“新建查询”

2)切换数据库

在“SQL编辑器”工具栏单击“可用数据库”下拉按钮–>将当前数据库切换成“XSCJ”

在这里插入图片描述

3)输入T-SQL查询语句创建表

XSQK–学生情况

CREATE TABLE XSQK
(学号  CHAR(6) NOT NULL,
姓名  CHAR(8) NOT NULL,
性别  CHAR(2) NOT NULL,
出生日期 SMALLDATETIME NOT NULL,
专业名  CHAR(10) NOT NULL,
联系电话  CHAR(11),
备注  TEXT,
CONSTRAINT  PK_XSQK_XH  PRIMARY KEY(学号),
CONSTRAINT  UQ_XSQK_DH  UNIQUE(姓名),
CONSTRAINT  CK_XSQK_DH  CHECK(联系电话  LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'))
GO

KC–课程

CREATE TABLE KC
(课程号 CHAR(3) NOT NULL PRIMARY KEY(课程号),
课程名 CHAR(20) NOT NULL,
授课教师 CHAR(8),
开课学期  TINYINT  NOT NULL DEFAULT 1,
学时 TINYINT NOT NULL,
学分 TINYINT,
CONSTRAINT CK_KC_XQ CHECK(开课学期>=1 AND 开课学期<=8))
GO

XS_KC–学生_课程

CREATE TABLE XS_KC
(学号 CHAR(6) NOT NULL  REFERENCES XSQK(学号),
课程号 CHAR(3) NOT NULL,
成绩 TINYINT CHECK(成绩>=0 AND 成绩<=100),
PRIMARY KEY(学号,课程号),
FOREIGN KEY(课程号) REFERENCES KC(课程号))
GO

在这里插入图片描述

4)执行命令

在“SQL编辑器”工具栏中单击“执行”

5)查看表

在“对象资源管理器”中单击“XSCJ”数据库–>单击“刷新”
在这里插入图片描述

SSMS创建表

单击“目标数据库”–>右键“表”–>“新建”–>“表”–>弹出表设计器窗口–>设置字段名、字段类型、是否可以为null–>保存

XSQK–学生情况

在这里插入图片描述

设置主键

右键“姓名”–>“设置主键”
在这里插入图片描述

KC–课程

在这里插入图片描述

设置列属性

单击某条字段后下方“列属性”可以进行设置,这里将默认值设置为1:
在这里插入图片描述

设置约束

右键需要设置约束的字段–>单击“CHECK约束”–>添加约束–>设置表达式
在这里插入图片描述
(这里题目要求设置约束值为1~8,使用AND连接两个条件)
注意AND语句后面语法:字段 符号 最大值
在这里插入图片描述

XS_KC–学生_课程

在这里插入图片描述

设置主键外键
  • 一张表的某个字段如果是外键,表示该字段是另外一张表的主键!

  • 建立关系时,数据类型必须一致!

设置外键时,右键需要设置外键的字段–>单击“关系”–>“常规”–>“表和列规范”–>单击···设置外键关系
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里报错如下:
在这里插入图片描述
考虑题目中XSQK表将“姓名”字段设置成主键错误,这里将XSQK表的主键修改为“学号”
在这里插入图片描述
在这里插入图片描述
设置组合主键时,按住shift,再点击你要选中的列就ok了
在这里插入图片描述

设置约束

这里对“成绩”字段进行约束(成绩区间为0~100)
注意AND语句后面语法:字段 符号 最大值
在这里插入图片描述

查看创建的表(SQL创建)

右键需要查看的表–>单击“设计”

XSQK–学生情况

在这里插入图片描述

KC–课程

这里与题目要求稍有不同,“学时”字段可以为空。
在这里插入图片描述
做以下修改:

ALTER TABLE KC
MODIFY column 学时 TINYINT DEFAULT NULL;#可以为空
GO

这里已经删除SQL语句创建的表,不再做修改演示

XS_KC–学生_课程

在这里插入图片描述

手动添加数据

右键需要添加数据的表–>“编辑前200行”–>手动添加数据

XSQK–学生情况

在这里插入图片描述

KC–课程

在这里插入图片描述

XS_KC–学生_课程

在这里插入图片描述

注意

添加信息须注意约束,修改内容时也要注意约束,添加每一条数据须完整才能下一条

表的其他操作

在这里插入图片描述

删除数据

在上面手动填充的数据基础上,进行以下删除操作:
直接删除XSQK表中的数据:
在这里插入图片描述
这里因为主表XS_KC中用到了从表XSQK中的“学号”字段,因此不能直接删除XS_KC表中的数据
这里查看一下数据库关系图
单击所在数据库XSCJ–>右键“数据库关系图”–>“新建数据库关系图”–>添加表,这里可以按住shift全部选中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除成功

注意:

  • 删除记录后不可以恢复
  • 可以同时删除多条记录
  • 先删除从表中的相关记录,然后才能删除主表中的相关的记录

Reference

强推:SQL server SSMS图形界面实现(创建表、约束、关系图)/文CSDN@自学之路←_←

SQL server 中设置CHECK约束/文CSDN@烟敛寒林o

sqlserver设置两个及两个以上主键/文CSDN@不坠青云之志

[SqlServer]SQL Server创建约束图解/文博客园@Masonlu

mysql修改字段属性及修改是否非空/文CSDN@Rm_and_Rf

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【实验二】【创建表并输入数据】 的相关文章

随机推荐