实验创建和管理其他数据库对象
- 格式:doc
- 大小:157.00 KB
- 文档页数:9
实验一数据定义操作●实验目的1.掌握数据库和表的基础知识2.掌握使用创建数据库和表的方法3.掌握数据库和表的修改、查看、删除等基本操作方法●实验内容和要求一、数据库的创建在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示:Grademanager数据库参数表二、表的创建、查看、修改和删除1.表的创建在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构特别注意:为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。
图1 设置性别的约束(2)Course表(课程名称表)的表结构(3)SC表(成绩表)的表结构特别注意:①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100②为SC表设置外键Sno和Cno的方法:右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。
按照相同的方法,将属性Sno也设置为外键。
图2为SC表设置外键Cno2.向上述表中输入如下数据记录学生关系表Student (右键单击表Student ,选择“编辑前200行”)课程关系表Course 成绩表SC3.修改表结构(找到操作的方法即可,不需要真正地修改表中的属性) (1)向student 表中增加“入学时间”列,其数据类型为日期型 (2)将student表中的sdept 字段长度改为20 (3)将student 表中的Speciality 字段删除思考题1. SQL Server 的数据库文件有几种?扩展名分别是什么? 2. 如何实现数据库的备份和还原?2.在定义基本表语句时,NOT NULL 参数的作用是什么? 3.主码可以建立在“值可以为NULL ”的列上吗?实验二 简单查询● 实验目的1. 掌握SELECT 语句的基本用法2. 使用WHERE 子句进行有条件的查询3. 掌握使用IN 和NOT IN ,BETWEEN …AND 和NOT BETWEEN …AND 来缩小查询范围的方法4. 掌握聚集函数的使用方法5. 利用LIKE 子句实现字符串匹配查询6. 利用ORDER BY 子句对查询结果排序7. 利用GROUP BY 子句对查询结果分组● 实验内容和要求一、表结构修改1.在实验一的所建立的数据库中增加Teacher 表,结构如下:2.在实验一的所建立的数据库中增加Teaching 表,表结构如下: Teaching 表(授课表)的表结构3.向上述两表中输入如下数据记录教师表Teacher 授课表Teaching二、完成下面查询 1.查询所有男生信息2.查询年龄大于24岁的女生学号和姓名3.查询所有教师的Tname、Tdept4.查询“电子商务”专业的学生姓名、性别和出生日期5.查询成绩低于90分的学生学号及课号,并按成绩降序排列6.查询Student表中所有的系名7.查询“C01”课程的开课学期8.查询成绩在80分至90之间的学生学号及课号9.统计有学生选修的课程门数10.查询成绩为77,88或99的记录11.计算“C02”课程的平均成绩12.输出有成绩的学生学号13.查询所有姓“刘”的学生信息14.统计输出各系学生的人数15.查询选修了“C03”课程和学生的学号及其成绩,查询结果按分数的降序排列16.查询各个课程号及相应的选课人数,并为选课人数取别名为“人数”17.统计每门课程的选课人数和最高分,并为选课人数和最高分分别取别名为“人数”、“最高分”18.统计每个学生的选课门数和考试总成绩,并为选课门数和总成绩分别取别名为“门数”、“总成绩”,并按选课门数降序排列。
数据库实验指导书信息安全专业王爽2009一.概述1.SQL Server 2000 组成SQL Server是可缩放的高性能基于SQL和客户/服务器体系结构的关系数据库管理系统服务器软件包,是由Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。
从图1 SQL Server 的体系结构示意图中看出,SQL Server 2000由4部分组成,在实验中,我们要求掌握基于SQL Server 2000的服务器的使用,也就是数据库管理员DBA的主要操作。
(注:本文所有内容均在SQLServer 2000上实现,读者也可在SQL Server 2005 上得到类似结果。
)图1 SQL Server 的体系结构示意图2. SQL Server 2000 的安装SQL Server 2000 的常见版本有:企业版、标准版、个人版、开发人员版等。
对软硬件的最低需求为:CPU Pentium 166MHz,内存64MB,硬盘180 MB。
SQL Server 2000企业版和标准版只能在windows2000 Server 版和Professional 版操作系统下运行。
下面介绍SQL Server 2000企业版在本地机上的安装过程。
1)插入SQL Server 2000 光盘,自动安装程序启动,屏幕上出现如图2所示画面,按图2 所示选择SQL Server 2000 组件;2) 选择安装数据库服务器,如图3所示,进入SQL Server2000 企业版安装向导;3)在安装向导对话框中点击下一步,进入计算机名对话框;4)选择本地安装,点击下一步,进入安装选择对话框;5)选择创建新的SQL Server 实例,点击下一步,进入用户信息对话框;6)输入用户信息,点击下一步,进入安装定义对话框;7)选择服务器和客户端工具,点击下一步,进入实例名对话框;8)输入实例名,点击下一步,进入安装类型选择对话框;9)选择典型安装,进入服务帐号设置对话框,如图4所示;10)选择对每一个用户使用同一个帐号,自动启动服务器,点击下一步,进入选择身份验证模式选择对话框,如图5所示;11)选择Windows 身份验证模式。
sql create 描述摘要:1.SQL 简介2.SQL 创建语句的作用3.SQL 创建表的语法4.SQL 创建表的实例5.SQL 创建其他数据库对象的语法及实例正文:1.SQL 简介SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的编程语言。
它可以执行查询、插入、更新和删除等数据库操作,还可以用于创建和管理数据库表、视图和索引等数据库对象。
SQL 具有丰富的功能和高度的可扩展性,广泛应用于各种数据库管理系统,如MySQL、Oracle、SQL Server 等。
2.SQL 创建语句的作用在SQL 中,创建语句是用于创建数据库表、视图、索引等数据库对象的命令。
通过创建语句,我们可以定义数据库中存储的数据类型、数据结构和数据约束等,从而满足不同业务场景的数据存储需求。
3.SQL 创建表的语法SQL 创建表的基本语法如下:```sql列名1 数据类型约束,列名2 数据类型约束,...);```其中,表名是我们要创建的表的名称;列名1、列名2 等是我们要存储的数据的列名;数据类型是列的数据类型,如INT、VARCHAR、DATE 等;约束是可选的,用于定义列的唯一性、非空性等限制条件。
例如,创建一个名为“students”的表,包含“id”、“name”和“age”三个列,其中“id”列为主键且非空,可以使用以下SQL 语句:```sqlCREATE TABLE students (id INT PRIMARY KEY NOT NULL,name VARCHAR(50) NOT NULL,age INT);```4.SQL 创建表的实例除了创建“students”表,我们还可以创建其他表。
例如,创建一个名为“courses”的表,包含“id”、“course_name”和“teacher”三个列:```sqlid INT PRIMARY KEY,course_name VARCHAR(100),teacher VARCHAR(50));```5.SQL 创建其他数据库对象的语法及实例除了创建表,SQL 还可以创建其他数据库对象,如视图、索引等。
实验一数据库和表的建立●实验目的1.掌握数据库和表的基础知识2.掌握使用创建数据库和表的方法3.掌握数据库和表的修改、查看、删除等基本操作方法●实验内容和要求一、数据库的创建在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示:Grademanager数据库参数表二、表的创建、查看、修改和删除1.表的创建在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构特别注意:为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。
图1 设置性别的约束(2)Course表(课程名称表)的表结构(3)SC表(成绩表)的表结构特别注意:①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100②为SC表设置外键Sno和Cno的方法:右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。
按照相同的方法,将属性Sno也设置为外键。
图2为SC表设置外键Cno2.向上述表中输入如下数据记录学生关系表Student (右键单击表Student ,选择“编辑前200行”)课程关系表Course 成绩表SC3.修改表结构(找到操作的方法即可,不需要真正地修改表中的属性) (1)向student 表中增加“入学时间”列,其数据类型为日期型 (2)将student表中的sdept 字段长度改为20 (3)将student 表中的Speciality 字段删除思考题1. SQL Server 的数据库文件有几种?扩展名分别是什么? 2. 如何实现数据库的备份和还原?2.在定义基本表语句时,NOT NULL 参数的作用是什么? 3.主码可以建立在“值可以为NULL ”的列上吗?实验二 单表查询● 实验目的1. 掌握SELECT 语句的基本用法2. 使用WHERE 子句进行有条件的查询3. 掌握使用IN 和NOT IN ,BETWEEN …AND 和NOT BETWEEN …AND 来缩小查询范围的方法4. 掌握聚集函数的使用方法5. 利用LIKE 子句实现字符串匹配查询6. 利用ORDER BY 子句对查询结果排序7. 利用GROUP BY 子句对查询结果分组● 实验内容和要求一、表结构修改1.在实验一的所建立的数据库中增加Teacher 表,结构如下:2.在实验一的所建立的数据库中增加Teaching 表,表结构如下: Teaching 表(授课表)的表结构3.向上述两表中输入如下数据记录教师表Student 授课表Teaching二、完成下面查询 1.查询所有男生信息2.查询年龄大于24岁的女生学号和姓名3.查询所有教师的Tname、Tdept4.查询“电子商务”专业的学生姓名、性别和出生日期5.查询成绩低于90分的学生学号及课号,并按成绩降序排列6.查询Student表中所有的系名7.查询“C01”课程的开课学期8.查询成绩在80分至90之间的学生学号及课号9.统计有学生选修的课程门数10.查询成绩为77,88或99的记录11.计算“C02”课程的平均成绩12.输出有成绩的学生学号13.查询所有姓“刘”的学生信息14.统计输出各系学生的人数15.查询选修了“C03”课程和学生的学号及其成绩,查询结果按分数的降序排列16.查询各个课程号及相应的选课人数,并为选课人数取别名为“人数”17.统计每门课程的选课人数和最高分,并为选课人数和最高分分别取别名为“人数”、“最高分”18.统计每个学生的选课门数和考试总成绩,并为选课门数和总成绩分别取别名为“门数”、“总成绩”,并按选课门数降序排列。
数据库管理与维护(SQL Server 2008)鲍丽红天水师范学院目录目录实验一SQL Server 2008安装 (1)实验二数据库创建和管理 (2)实验三数据库数据表的创建和管理 (3)实验四数据库的数据查询 (5)实验五Transact-SQL的编程实现 (6)实验六销售管理数据库中视图的应用 (7)实验七数据库中索引的应用 (8)实验八存储过程的应用 (9)实验九触发器的应用 (10)实验十数据库安全性管理 (11)实验十数据库的日常维护 (12)实验十二自动化管理(选做) (13)实验一SQL Server 2008安装【实训目的】1、了解安装SQL Server 2008 的硬件和软件的要求2、掌握SQL Server 2008 的安装方法3、掌握对象资源管理器与查询编辑器的使用【实训内容】1、在本地计算机上练习安装SQL Server2008 R2版本。
2、练习启动、暂停和关闭SQL Server2008的某一服务器。
实验二数据库创建和管理【实训目的】1、掌握数据库创建的方法2、掌握数据库扩容和收缩的方法3、掌握查看数据库信息方法4、掌握数据库的分离和附加的方法【实训内容】1、创建了一个library数据库,该数据库的主数据文件逻辑名称为Library_data,物理文件名为Library.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为Library_log,物理文件名为Library.ldf,初始大小为3MB,最大尺寸为5MB,增长速度为1MB。
2、对library数据库进行扩容,添加一个5 MB的数据文件和一个5MB的事务日志文件。
3、对数据库library进行修改,将事务日志文件的大小增加到15MB,将数据文件library1和library2分别增加到15MB和30MB。
同时增加两个文件组,分别包含一个数据文件,逻辑文件名library3和library4,物理文件名为library2.ndf和library4.ndf,初始大小都为15MB,最大尺寸为无限制。
《数据库系统原理》实验指导书《数据库系统原理》实验指导书实验1 熟悉SQL Server 2000环境及数据库⽂件管理⼀、实验⽬的1、掌握登录SQL Server 2000的⽅法,熟悉SQL Server实⽤⼯具的使⽤;2、了解SQL Serve数据库的存储结构,掌握估算数据库⼤⼩技术;3、掌握创建数据库技术,掌握扩⼤和压缩数据库技术;4、掌握使⽤企业管理器⼯具和T-SQL语句及系统存储过程对数据库进⾏管理。
⼆、实验要求1、熟悉SQL Server 2000的⼯作环境,了解SQL Server主要管理⼯具的⽤途和使⽤⽅法。
2、掌握在SQL Server 2000环境下,利⽤企业管理器和T-SQL语⾔创建和管理数据库的⽅法。
三、实验设备、环境设备:奔腾II或奔腾II以上计算机环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中⽂版四、实验原理、⽅法上机操作五、实验步骤及内容(⼀)实验步骤1、教师讲授2、教师演⽰3、学⽣实际操作(⼆)实验内容1、熟悉SQL Server 2000管理⼯具(1)企业管理器(Enterprise Manager)(2)查询分析器(Query Analyzer)(3)服务管理器(Service Manager)(4)事件探查器(Profiler)(5)导⼊和导出数据(Import and Export Data)(6)SQL Server其他管理⼯具2、数据库⽂件管理(1)数据库的创建和删除。
①在企业管理器中建⽴⼀个图书读者库。
图书读者数据库中将包括⼀个数据⽂件和⼀个⽇志⽂件,各⽂件的属性见表1-1。
②删除上题所建的数据库然后⽤T-SQL语句重新创建。
(2)修改数据库①查看图书读者数据库的属性及数据⽂件和⽇志⽂件的空间使⽤情况。
②在企业管理器中,⾸先扩⼤图书读者数据库的主数据⽂件的⼤⼩,然后查看扩⼤后的数据库属性,接着收缩主数据⽂件到定义时的⼤⼩。
数据库原理及应用实验报告实验12 SQL Server安全管理实验目的:掌握创建登录账号的方法;掌握创建数据库用户的方法;掌握语句级许可权限管理;掌握对象级许可权限管理实验内容:12.1实验题目:创建登陆账号实验过程:1)创建使用Windows身份验证的登录账号WinUser2)创建使用SQL Server身份验证的登录账号SQLUser,设置可访问数据库jxsk实验结果:12.2实验题目:创建数据库用户实验过程:1)为登陆账号WinUser创建访问MXM实例中数据库jxsk的用户账号2)为登陆账号SQLUser创建访问MXM实例中所有数据库的用户账号实验结果:12.3实验题目:语句级许可权限管理实验过程:1)展开实例MXM中数据库节点,右击jxsk,选属性项2)授予用户WinUser只可以在数据库jxsk中创建视图和表3)授予用户SQLUser权限:不允许用户SQSUser在数据库jxsk 中创建视图和表,但允许其他操作。
实验结果:12.4实验题目:对象级许可权限管理实验过程:1)授予用户WinUser对数据库jxsk表S的INSERT,UPDATE权限2)授予用户SQLUser对数据库jxsk表S的INSERT权限;废除对表S的UPDATE权限3)授予用户WinUser对数据库jxsk表S的列SNO的SELECT,UPDATE权限,对SN的SELECT权限实验结果:实验13 SQL Server事务设计实验目的:1,理解和掌握事务的概念、特性以及事务的设计思想。
2,学习和掌握事务创建、执行的方法。
实验13.1 设计并执行事务实验目的:掌握事务的设计思想和方法。
实验内容:基于数据库jiaoxuedb进行下面设计:(1)设计并执行事务1:将学生陈东辉的计算机基础课程成绩改为77分。
(2)设计并执行事务2:将课程数据结构的课号与微机原理的课号互换。
(3)设计并执行事务3教师许永军退休,由他讲授的2门课程中,课程微机原理转给教师张朋讲授,数据库转给李英讲授。
实验三表的设计、创建与操作管理实验目的:1、了解表的结构特点。
2、了解SQL SERVER的基本数据类型。
3、学会在企业管理器中创建和管理表的方法。
4、学会在查询分析器中使用T-sql语句创建和管理表。
5、掌握设置数据完整性的不同方法。
6、掌握规则和默认的特点及在企业管理器和查询分析器的操作方法。
7、学会在企业管理器中对表进行插入、修改和删除数据操作。
8、学会使用T-SQL语句对表进行插入、修改和删除数据操作。
实验准备:1、确定数据库中需要包括哪些表。
2、对表进行规化,设计各表的结构以及各列的数据类型。
3、领会数据完整性的含义。
4、掌握规则和默认在企业管理器和查询分析器中的创建、绑定、解绑、删除。
5、掌握在企业管理器和查询分析器中使用T-SQL语句创建数据库表的方法。
6、掌握在企业管理器和查询分析器中使用T-SQL语句管理数据库表的方法。
7、掌握在企业管理器和查询分析器中使用T-SQL语句插入、修改和删除数据的方法。
实验任务:内容一:设计与管理表一、数据需求分析。
SQL SERVER数据库中的表是一个非常重要的数据库对象。
在一个数据库中,可能有由不同用户创建的表。
对数据的访问、数据完整性维护等都是通过对表的操作实现的。
创建用于“学生信息”数据库中的三个表,表名分别为“学生”、“学期成绩”、“课程注册”,并且表的结构如下:表1 “学生”表结构表2 “学期成绩”表结构表3 “课程注册”表结构二、内容要点分析1、创建表CREATE TABLE [数据库名.拥有者.] 表名( < 字段定义 >[,…n])< 字段定义 >::={字段名数据类型}[[DEFAULT 常量表达式]|[IDENTITY [(种子,增量)]]][<字段约束>[…n]2、修改表ALTER TABLE 表名{ [ ALTER COLUMN /*对现有字段属性进行修改*/ 字段名新数据类型 [(精度 [ , 小数位数] )][ NULL | NOT NULL ]| ADD /*添加字段*/{字段定义|字段名 AS 计算字段表达式}[,…n]| DROP COLUMN 字段名[,…n] /*删除字段*/| ADD CONSTRAINT 约束名称 /*添加约束*/| DROP CONSTRAINT 约束名称 /*删除约束*/3、查看表结构信息[EXEC] Sp_help 表名4、删除表DROP TABLE 表名[,…n]三、实验内容1、在企业管理器中创建“学生”表。
一、实验目的1. 熟悉并掌握数据库的基本操作,包括创建数据库、创建表、插入数据、查询数据等。
2. 熟悉并掌握Java编程语言的基本语法和面向对象编程思想。
3. 通过实际编程,提高学生的编程能力和问题解决能力。
二、实验环境1. 操作系统:Windows 102. 数据库:MySQL 5.73. 开发工具:Eclipse4. 编程语言:Java三、实验内容1. 数据库设计2. 系统功能设计3. 系统实现四、实验步骤1. 数据库设计(1)创建数据库```sqlCREATE DATABASE StudentManagementSystem;```(2)创建表```sql-- 创建学生信息表CREATE TABLE student_info (student_id INT PRIMARY KEY AUTO_INCREMENT, student_name VARCHAR(50) NOT NULL,gender CHAR(1) NOT NULL,class_id INT NOT NULL,age INT NOT NULL,phone VARCHAR(20));-- 创建班级信息表CREATE TABLE class_info (class_id INT PRIMARY KEY AUTO_INCREMENT, class_name VARCHAR(50) NOT NULL);```2. 系统功能设计(1)学生信息管理- 添加学生信息- 删除学生信息- 修改学生信息- 查询学生信息(2)班级信息管理- 添加班级信息- 删除班级信息- 修改班级信息- 查询班级信息3. 系统实现(1)创建Java项目- 使用Eclipse创建一个名为“StudentManagementSystem”的Java项目。
(2)创建实体类- 创建Student类,包含学生信息字段,如:student_id、student_name、gender、class_id、age、phone等。
数据库原理及应用实验教案第一章:数据库基础1.1 实验目的了解数据库的基本概念掌握数据库的基本操作1.2 实验环境安装有数据库管理系统(如MySQL、Oracle或SQL Server)的计算机数据库管理系统的客户端工具1.3 实验内容实验一:创建数据库和表学习使用数据库管理系统的命令行工具或图形界面工具创建数据库学习使用SQL语句创建表实验二:数据库的简单操作学习使用SQL语句进行数据的插入、查询、更新和删除操作第二章:数据库设计2.1 实验目的掌握数据库设计的基本步骤和方法学会使用实体-关系模型设计数据库2.2 实验环境安装有数据库管理系统(如MySQL、Oracle或SQL Server)的计算机数据库管理系统的客户端工具2.3 实验内容实验三:实体-关系模型设计学习实体-关系模型的基本概念和表示方法根据给定的需求设计实体-关系模型实验四:将实体-关系模型转换为数据库模式学习将实体-关系模型转换为数据库模式的方法将设计的实体-关系模型转换为数据库模式第三章:SQL语言3.1 实验目的掌握SQL语言的基本操作学会使用SQL语言进行数据库的创建、查询和更新操作3.2 实验环境安装有数据库管理系统(如MySQL、Oracle或SQL Server)的计算机数据库管理系统的客户端工具3.3 实验内容实验五:SQL语言的基本操作学习使用SQL语言创建数据库、表、视图和索引学习使用SQL语言进行数据的插入、查询、更新和删除操作第四章:数据库的安全与保护4.1 实验目的了解数据库的安全与保护的基本概念和方法学会使用数据库管理系统的权限管理和备份恢复功能4.2 实验环境安装有数据库管理系统(如MySQL、Oracle或SQL Server)的计算机数据库管理系统的客户端工具4.3 实验内容实验六:数据库的权限管理学习使用数据库管理系统的权限管理功能,创建用户和角色,分配权限实验七:数据库的备份与恢复学习使用数据库管理系统的备份与恢复功能,进行数据库的备份和恢复操作第五章:数据库应用系统设计与实现5.1 实验目的掌握数据库应用系统的设计与实现的基本步骤和方法学会使用数据库管理系统进行应用程序的开发5.2 实验环境安装有数据库管理系统(如MySQL、Oracle或SQL Server)的计算机数据库管理系统的客户端工具编程语言环境和开发工具(如Java、Python或C等)5.3 实验内容实验八:数据库应用系统的设计与实现学习使用数据库管理系统进行应用程序的连接、查询和更新操作实验九:实现简单的数据库应用功能使用编程语言环境和开发工具,实现用户登录、数据查询和数据增删改等功能实验十:测试与优化数据库应用系统对实现的数据库应用系统进行测试和优化,确保系统的稳定性和性能第六章:数据库性能优化6.1 实验目的学习数据库性能优化的基本策略和方法。
实验:创建与管理其他数据库对象
一、实验目的
掌握创建管理索引、视图、存储过程和触发器对象的使用方法;
二、实验环境
已安装SQL Server 2005 企业版的计算机;
具有局域网环境,有固定IP;
三、实验学时
4学时
四、实验要求
1. 掌握索引的创建和管理方法;
2. 掌握视图的创建和管理方法;
3. 掌握存储过程的创建和管理方法;
4. 掌握触发器的创建和管理方法;
5. 完成实验报告;
五、实验内容及步骤
请使用T-SQL 语句实现进行以下操作:
1.在student表的sno列上创建唯一性聚集索引index_sno
use stu
go
create unique clustered index index_sno
on student(sno)
2.在student表的sname列上创建唯一性非聚集索引index_sname
use stu
go
create unique nonclustered index index_sname
on student(sname)
3.在student表的sage列上创建非聚集索引index_sage
use stu
go
create nonclustered index index_sage
on student(sage)
4.在sc表的sno列和cno列上创建复合非聚集索引index_sno_cno
use stu
go
create index index_sno_cno
on sc(sno,cno)
5.将索引index_sno_cno更名为index_snocno
exec sp_rename 'sc.[index_sno_cno]','index_snocno','index'
6.删除上面的索引index_snocno
use stu
go
drop index index_snocno
on sc
7.查看student表的索引基本信息
EXEC sp_helpindex student
8.创建一个只选修8号课程的学生情况的视图信息
use stu
go
create view xuanxiu_8
as
select student.sno,
sname,sage,sdept,ssex
from student,sc
where student.sno=sc.sno and cno='8'
group by student.sno,sname,sage,sdept
having count(cno)=1
9.创建一个视图view_stu,只包含学生的学号,姓名,年龄信息
create view view_stu
as
select sno as 学生学号,
sname as 姓名,
sage as 年龄
from student
10.在上一题视图的基础上创建年龄在20岁以上的的学生的视图
create view view_stu1
as
select sno as 学生学号,
sname as 姓名,
sage as 年龄
from student
where sage>20
11.创建一个包含不及格同学及90分以上同学的学号、姓名、课程名称及成绩的
视图
create view view_stu2
as
select student.sno as 学生学号,
sname as 姓名,
cname as 课程名,
grade as 成绩
from student,sc,course
where student.sno=sc.sno
and sc.cno=course.cno
and grade<60 and grade>90
12.选择一个上面创建的视图,查看视图的信息
select * from view_stu1
go
13.选择一个上面创建的视图,修改删除其中的一列
delete view_stu1
where 学生学号='200515001'
select * from view_stu1
14. 选择一个上面创建的视图进行删除操作
drop view view_stu1
15.从视图view_stu中查询19岁的男生记录
select * from view_stu
where 年龄=19
16.通过视图view_stu中插入一行数据。学号:2006010010,姓名:赵青,年
龄:
insert into view_stu
values('200610010','赵青','20')
select * from view_stu
17.将视图view_stu中姓名为“李蕾”的年龄改为“22”
update view_stu
set 年龄='22'
where 姓名='李蕾'
18.通过视图 view_stu将姓名为“李贵”的记录删除
delete view_stu
where 姓名='李贵'
19.自行选择上面创建的一个视图插入一个记录。
insert into view_stu
values('200515029','刘海涛','21')
select * from view_stu
20.自行选择一个视图根据一定的条件进行查询。
select * from view_stu
where 年龄>20
21.自行选择联合一张表和某个视图进行复合查询。
select distinct 学生学号,姓名,年龄
from view_stu,sc
where view_stu.学生学号=sc.sno
and grade>80
22.创建存储过程返回全部男生选课及成绩等相关信息
create procedure stu_info
as
select distinct a.sno,sname,ssex
from student a,sc
where a.sno=sc.sno
and ssex='男'
use stu
exec stu_info
23.创建一个带输入参数的存储过程,能够根据参数向学生表中插入一条记录
CREATE PROCEDURE student_insert (@sno char(9) ,@sname
char(8),@ssex char(2),@sage int,@sdept char(4))
as
insert into student(sno, sname, ssex, sage, sdept )
values(@sno,@sname,@ssex,@sage,@sdept )
/*调用存储过程*/
EXEC student_insert '200515002','王旺','女',20,'it'
24.创建一个带输入参数的存储过程,根据不同的学生名参数,返回该学生的所
有课程成绩。
USE stu
GO
CREATE PROCEDURE stu_sc2(@yx char(6) )
AS SELECT DISTINCT a.sno,sname,cno,grade
FROM student a,sc
WHERE a. sno =sc.sno and sname=@yx
GO
Exec stu_sc2'张力'
25.创建一个带输入输出参数的存储过程,根据输入的系部名,统计该系学生的
平均成绩并输出。
USE stu
GO
CREATE PROCEDURE PINGJUN
@stu_sdept varchar(8), @average int OUTPUT
AS
SELECT @average=avg(grade)
FROM student,sc
WHERE student.sno=sc.sno AND sdept=@stu_sdept
GO
DECLARE @G int
EXEC PINGJUN'CS', @G OUTPUT
SELECT @G
26.查看第22和23题的存储过程的有关信息,并查看它们的定义。修改第22
题的存储过程,改为查询全部女生的资料。删除第23题的存储过程。
27.创建student表的DELETE触发器,当一个学生退学后,信息从student表
中删除,触发在sc表中删除该生选课情况。
28.创建一个触发器,检查在sc表中输入一门课程成绩,必须符合在0到100
分范围内。