用T-SQL命令完成下面要求。

1.自建数据库,在数据库中创建一个stu(sno,sname,ssex,sdept,sage)表,通过constraint关键词为列添加约束条件,其中:sno为主键,ssex 的取值男或女,sage取值范围(0-120)。

CREATE DATABASE student
GO
USE student
CREATE TABLE stu
(sno char(12) NOT NULL CONSTRAINT PK_sno PRIMARY KEY,sname char(10) NOT NULL,ssex char(2) NOT NULL CHECK(ssex in ('男','女')),sdept char(20) NOT NULL,sage int NOT NULL CHECK(sage>=0 and sage<=120)
)

2.修改表stu,通过constraint为stu的sname列增加一个唯一性约束条件,为stu的sdept列增加默认值为“计算机”约束条件。

ALTER TABLE stu
ADD CONSTRAINT UK_sname UNIQUE (sname),CONSTRAINT DK_sdept DEFAULT '计算机' FOR sdept

3.将stu表中sage列的约束条件改为(0-150)。

ALTER TABLE stu
DROP CONSTRAINT CK__stu__sage__00551192
go
ALTER TABLE stu
ADD CONSTRAINT CK_sage CHECK(sage>=0 and sage<=150)

4.在数据库中创建一个表score(sno,cno,score),要求:(sno,cno)为主键,sno为外键,同时满足当主表stu中sno中的值修改或者删除时,从表score中的sno值也做相应的修改或者删除,score取值范围(0–100)。

CREATE TABLE score
(sno char(12) NOT NULL,cno char(10) NOT NULL,score int NOT NULL CHECK(score between 0 and 100)CONSTRAINT PK_snocno PRIMARY KEY (sno,cno)CONSTRAINT FK_sno FOREIGN KEY (sno) REFERENCES stu (sno)ON DELETE CASCADEON UPDATE CASCADE,
)

5.在自建数据库中创建一个表student(学号,姓名,性别),其中学
号数据类型为用户自定义数据类型Sno_type。

CREATE TYPE Sno_type FROM char(12)
GO
CREATE TABLE student
(学号 Sno_type NOT NULL,姓名 char(10) NOT NULL,性别 char(2) NOT NULL)

6.定义一个局部变量,并通过该变量获取student表中学号为201901
学生的姓名并输出。

DECLARE @i char(6)
SET @i='201901'
SELECT 姓名 from dbo.student
WHERE 学号=@i

7.定义两个局部变量var1和var2,给两个变量赋值同时用PRINT输出加法运算之后的结果。

DECLARE @var1 int,@var2 int
SET @var1=1
SET @var2=2
PRINT @var1+@var2

8.定义两个局部变量var3和var4,给两个变量赋值同时用PRINT输出连接运算之后的结果。

DECLARE @var3 char(6),@var4 char(20)
SET @var3='张三'
SET @var4='是信息工程学院的学生'
SELECT @var3+@var4

9.从stu表中查询年龄比张三同学大的学生的学号、姓名和年龄。

SELECT sno as '学号',sname as '姓名',sage as '年龄'
from stu
where sage>(select sage from stu where sname='张三')

10.从student表中查询姓名以王开头,并且包含2个字符的学生的信息。

SELECT *
FROM student
WHERE 姓名 LIKE '王_'

SQL Server 实验七 数据完整性及数据库程序设计相关推荐

  1. SQL Server实验——数据库视图的定义与使用

    SQL Server实验--数据库视图的定义与使用 学生选课数据库的创建 创建学生信息表student 创建课程信息表course 创建学生选课信息表sc 插入相关信息 视图的创建 基本应用 一.创建 ...

  2. SQL Server 实验二 创建数据库

    SQL Server 实验二 创建数据库 这是一个系列,需几个文档一起看 Use master go Drop Database YGGLcreate database YGGL on (name=' ...

  3. SQL Server实验

    SQL Server实验 一.实验目的 二.实验步骤 三.实验内容 四.实验总结 一.实验目的 在SQL Server中创建数据库的基础上创建表,然后对表数据进行增删改操作. 二.实验步骤 (一)安装 ...

  4. SQL server实验练习1

    SQL server实验练习1 (1)请根据下面描述,使用SQL语句完成数据库的创建 名称:stuDatabase 主数据文件: 逻辑文件名: Data_M 物理文件名:stuDatabase__M. ...

  5. SQL server 实验练习2

    SQL server 实验练习2 1.根据要求使用DML完成数据编辑 (1)在表中添加1个新的系,dno为"d01006",并为该系添加2个专业信息和2条教师信息,其他具体数据自拟 ...

  6. SQL Server 2008高可用性系列:数据库快照

    SQL Server 2008高可用性系列:数据库快照 http://database.51cto.com  2010-09-13 14:45  我爱菊花  博客园  我要评论(0) 摘要:我们今天要 ...

  7. SQL Server 2008 R2如何开启数据库的远程连接

    SQL Server 2008 R2如何开启数据库的远程连接 转载于:https://www.cnblogs.com/macT/p/10213025.html

  8. 从Sql server 2000 到 Oracle 10g数据库迁移数据类型转化

    2010-01-12 从Sql server 2000 到 Oracle 10g数据库迁移数据类型转化 文章分类:数据库 SqlServer 2k转换为Oracle 10g 列名 SqlServer数 ...

  9. php实现sql server数据导入到mysql数据库_php实现SQL Server数据导入Mysql数据库(示例)...

    php将mssql的数据导入到mysql数据库中,代码: 代码示例: //连接SQL server数据库 $conn=mssql_connect("localhost"," ...

最新文章

  1. 一个关于异步的纠结问题
  2. GraphPad Prism 教程,如何在坐标上放置2条生存曲线
  3. redis异步写入mysql_异步操作redis,mysql
  4. GetLocalTime
  5. php框架例子,php框架中的动态实例化对象详解
  6. Unity网络--HLAPI(2):Unity HLAPI NetworkManager与NetworkBehaviour的回调函数
  7. NodeJS无所不能:细数10个令人惊讶的NodeJS开源项目
  8. JS一些概念知识及参考链接
  9. [原创]写给自己的总结—2014到2015
  10. JSP内置 对象(下)
  11. 步骤条自定义图片_用函数公式查找图片?我可没骗你
  12. 计算机网络—CSMA/CA协议
  13. Linux下的进程结构
  14. 树形表格插件 - vue-table-with-tree-grid
  15. html2canvas 截图丢失部分元素的问题
  16. 十一、总结一下今天在SpringAOP中遇到的一个坑,事务控制一直失败,自己感觉代码没错的感觉,往底层看,很明了了
  17. 线程池踩坑记 --load飙高的原因
  18. 利用证书签名绕过杀软
  19. android源码树结构介绍
  20. ARM SIMD NEON 简介 (翻译自 Introducing NEON Development Article)

热门文章

  1. uva 11584 - 字符串 dp
  2. spring-cloud-netflix学习笔记(一):Eureka Server
  3. mysql 8.0.19安装失败_windows10 下mysql 8.0.19安装教程,自测成功
  4. 不关闭防火墙 投屏方法
  5. spring+SpringMVC+MyBatis之配置多数据源
  6. mac配置chromedriver
  7. C++ 输入数据方法总结
  8. Android 项目主题样式库:统一颜色、字号,避免重复开发
  9. 完全卸载nginx及安装的详细步骤
  10. mybatis的动态代理