实验4 使用T-SQL语言创建和修改表答案
实验4 使用T-SQL语言创建和修改表
一、实验目的
1. 掌握使用查询分析器利用T-SQL语句创建数据库表的方法。
2. 掌握使用查询分析器利用T-SQL语句修改数据库表结构、删除数据库表的方法。 3. 掌握如何使用查询分析器利用T-SQL语句创建和使用用户自定义数据类型。
二、实验内容
新建人事管理系统数据库,包括三个表:员工基本信息表、部门信息表、员工工资信息表。三个表的结构如表3-7、表3-8、表3-9。完成以下各题。
列名 员工编号 员工姓名 员工登录名 员工登录密码 员工电子邮件 员工所属部门编号 员工基本工资 员工职位名称 员工电话 数据类型 INT NVARCHAR( 50 ) NVARCHAR( 20 ) BINARY (20) NVARCHAR( 50) INT INT NVARCHAR (50) 用户自定义类型 TELEPHONE_CODE DATETIME NVARCHAR (200) INT INT IMAGE
约束说明 NOT NULL NOT NULL NOT NULL NULL NOT NULL NULL NULL NULL NULL 备注 主键,约束名为PK_YGID 建议为英文字符,且与姓名不同 员工报到日期 员工自我介绍 员工剩余假期 员工的级别 员工照片 NOT NULL NULL NULL NULL NULL 初始为空,由员工自行输入 小时数 表 3-7 员工基本信息表
列名 部门编号 部门名称 部门描述 部门经理编号 类型 INT CHAR (10) CHAR (50) INT 约束说明 NOT NULL NULL NULL NULL 表 3-8部门信息表
列名 工资编号 员工编号 工资发放时间 员工基本工资 加班工资 缺勤扣除 其他工资 类型 INT INT DATETIME INT INT INT INT 约束说明 NOT NULL NOT NULL NOT NULL NULL NULL NULL NULL 表 3-9员工工资信息表
1. 使用T-SQL语句自定义一个数据类型TELEPHONE_COD,为字符型CHAR(15),
允许空值。 SQL代码如下: USE 人事管理系统
EXEC SP_ADDTYPE TELEPHONE_CODE,'CHAR(15)','NULL' 2. 使用查询分析器利用T-SQL语句创建员工基本信息表。
SQL代码如下: USE 人事管理系统
CREATE TABLE 员工基本信息表 ( 员工编号
INT
NOT NULL CONSTRAINT PK_YGID
备注 主键, 约束名为PK_GZID_YGID 主键,约束名为PK_GZID_YGID 备注 主键, 约束名为PK_BMID PRIMARY KEY,
员工姓名 NVARCHAR(50) NOT NULL, 员工登录名 NVARCHAR(20) NOT NULL,
员工登录密码 BINARY(20)
NULL,
员工电子邮件
NVARCHAR(50) NOT NULL, 员工所属部门编号 INT
NULL,
员工基本工资 INT
NULL,
员工职位名称 NVARCHAR(50)
NULL,
员工电话
TELEPHONE_CODE NULL, 员工报到日期 DATETIME
NOT NULL, 员工自我介绍 NVARCHAR(200) NULL, 员工剩余假期 INT NULL, 员工的级别 INT
NULL,
员工照片
IMAGE
NULL
)
3. 使用查询分析器利用T-SQL语句创建部门信息表。
SQL代码如下: USE 人事管理系统
CREATE TABLE 部门信息表 (
部门编号
INT
NOT NULL CONSTRAINT PRIMARY KEY, 部门名称 CHAR(10) NULL, 部门描述
CHAR(50) NULL, 部门经理编号 INT
NULL
)
4. 使用查询分析器利用T-SQL语句创建员工工资信息表。
SQL代码如下: USE 人事管理系统
CREATE TABLE 员工工资信息表 (
工资编号
INT
NOT NULL,
员工编号
INT NOT NULL,
PK_BMID
工资发放时间 员工基本工资 加班工资 缺勤扣除 其他工资
DATETIME NOT NULL, INT INT INT INT
NULL, NULL, NULL, NULL,
CONSTRAINT PK_GZID_YGID PRIMARY KEY(工资编号,员工编号) )
5. 使用T-SQL语句重命名员工工资信息表为员工工资表。
SQL代码如下: USE 人事管理系统
EXEC SP_RENAME 员工工资信息表,员工工资表 6. 使用查询分析器在员工基本信息表中进行如下修改:
(1) 添加一个“联系地址”字段,数据类型为VARCHAR(100),允许为空值。
SQL代码如下: USE 人事管理系统
ALTER TABLE 员工基本信息表
ADD 联系地址 VARCHAR(100) NULL
(2) 将“员工自我介绍”字段删除。
SQL代码如下: USE 人事管理系统
ALTER TABLE 员工基本信息表
DROP COLUMN 自我介绍
(3) 将“员工所属部门编号”字段重命名为“部门编号”,数据类型修改为INT,
不允许为空。 SQL代码如下: USE 人事管理系统
EXEC SP_RENAME '员工基本信息表.[员工所属部门编号]','部门编号','COLUMN'
ALTER TABLE 员工基本信息表
ALTER COLUMN 部门编号 INT NOT NULL
(4) 将“部门编号”字段添加外键约束,约束标识为FK_BMID,与部门信息表
中的“部门编号”字段关联。 SQL代码如下: USE 人事管理系统
ALTER TABLE 员工基本信息表
ADD CONSTRAINT FK_BMID FOREIGN KEY (部门编号) REFERENCES 部门信息表(部门编号)
(5) 添加一个“性别”字段,数据类型为CHAR(2),默认约束,约束名为DF_XB,
其值为“男”。 SQL代码如下: USE 人事管理系统
ALTER TABLE 员工基本信息表
ADD 性别 CHAR(2) CONSTRAINT DF_XB DEFAULT '男'
(6) 在“性别”列上增加CHECK约束,约束名为CK_XB,要求性别字段只能
是“男”或“女”。 SQL代码如下: USE 人事管理系统
ALTER TABLE 员工基本信息表
ADD CONSTRAINT CK_XB CHECK (性别 IN('男','女'))
7. 修改部门信息表,在“部门名称”列增加唯一约束UK_BMNAME。 SQL代码如下: USE 人事管理系统 ALTER TABLE 部门信息表
ADD CONSTRAINT UN_BMNAME UNIQUE(部门名称) 8. 修改员工工资表,删除主键约束PK_GZID_YGID。 SQL代码如下: USE 人事管理系统 ALTER TABLE 员工工资表
DROP CONSTRAINT PK_GZID_YGID
…… 此处隐藏:1231字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [学前教育]MC9S12XS256RMV1 xs128芯片手册4
- [学前教育]安东尼语录经典语录
- [学前教育]e级gps控制测量技术设计书
- [学前教育]苏教版2022-2022学年八年级下学期期末
- [学前教育]装修公司推广 营销
- [学前教育]家政服务合同(完整版)
- [学前教育]湖北省2016届高三联考语文试题
- [学前教育]爱立信无涯学习系统LTE题库1-LTE基础知
- [学前教育]揭秘大众柴油车作弊软件原理
- [学前教育]人才流失原因及对策分析
- [学前教育]房屋建筑施工工程劳务分包合同
- [学前教育]国际贸易实务试卷A卷09.6
- [学前教育]校园废品回收活动计划方案书范文格
- [学前教育]电大成本会计试题及答案
- [学前教育]大学物理实验 华南理工出版社 绪论答案
- [学前教育]爱丁堡产后抑郁量表
- [学前教育]液压冲击的危害、产生原因与防止方法(
- [学前教育]学生工作总结高一学生期中考试总结_020
- [学前教育]人民医院医疗废物管理规章制度大全
- [学前教育]阳光维生素的巨大抗癌潜能阅读题答案.d
- 马云在云锋基金江苏论坛闭幕式的发言
- 试论小学体育教育中的心理健康教育-教
- 语文A版一年级下册《语文乐园一》教学
- 2021四川大学物理化学考研真题经验参考
- [人教A版]2015-2016学年高中数学 第二
- 终端网点销售返利协议书
- 江苏省2015年眼科学主治医师青光眼考试
- 2017年部编人教版八年级语文上册教案
- 十一中学七年级英语上册Unit7Howmuchar
- 以赛促教的创新性实验教学机制建设实践
- 平凉市崆峒区2015七年级下生物期末试题
- 琶洲(地块五)A、B塔楼1、2#塔吊基础
- 一级医院工作制度与人员岗位职责
- 2018北京西城区高三二模理科数学试题及
- 炒股密码线技术 - 图文
- 职高学生生涯发展辅导教案
- 语文人教版四年级上册8 世界地图引出的
- 最新最新人教版二年级上册全册数学教案
- 2017高考英语全国2卷精彩试题(有问题
- 普通心理学笔记




