数据库系统sql实验.doc

上传人:枫** 文档编号:548141988 上传时间:2023-07-18 格式:DOC 页数:23 大小:347KB
返回 下载 相关 举报
数据库系统sql实验.doc_第1页
第1页 / 共23页
数据库系统sql实验.doc_第2页
第2页 / 共23页
数据库系统sql实验.doc_第3页
第3页 / 共23页
数据库系统sql实验.doc_第4页
第4页 / 共23页
数据库系统sql实验.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《数据库系统sql实验.doc》由会员分享,可在线阅读,更多相关《数据库系统sql实验.doc(23页珍藏版)》请在金锄头文库上搜索。

1、创建架构架构是一个对象的容器,可以包含多个数据表,存储过程和视图等基础对象,SQL Server 2008采用架构分离的方式,增强了管理对象的灵活性。架构创建有两种方式:1、 图形化界面选择“数据库”,架构角色配置权限2、 命令Create Schema 架构名称(选择数据库已分类定义过)Authorization 用户名或角色例,先创建用户“李雪0501”后 创建架构create schema admin authorization 李雪0501删除架构drop schema admin1数据定义1.1模式的定义与删除 1、定义模式在查询窗口输入,例1 create database tes

2、tStudCour创建数据库testStudCour,在对象资源管理器中的目录“数据库”单击右键“刷新”,出现“testStudCour”数据库 例2 create database testStudCour2 on primary ( name = NlixuetestStudCour, filename = Nd:lixuetestStudCour.mdf , size = 3072KB , maxsize = unlimited, filegrowth = 1024KB ) LOG ON ( name = NlixuetestStudCour_log, filename = Nd:lix

3、uetestStudCour_log.ldf , size = 1024KB , maxsize = 2048GB, filegrowth = 10% )例3 create database testStudCour3 Create table testStudCour3.TabStudCour( 学号 nchar(9) primary key, 姓名 nchar(10) NULL, 性别 nchar(2) NULL, 系别 nchar(20) NULL,)消息2760,级别16,状态1,第8 行指定的架构名称testStudCour3 不存在,或者您没有使用该名称的权限。修改:先执行crea

4、te database testStudCour3 在执行 Create table testStudCour3.dbo.TabStudCour( 学号 nchar(9) primary key, 姓名 nchar(10) NULL, 性别 nchar(2) NULL, 系别 nchar(20) NULL,) 2、删除模式 例4 drop database testStudCour2删除数据库testStudCour,在对象资源管理器中的目录“数据库”单击右键“刷新”,“testStudCour”数据库被删除 例5 drop database testStudCour3 Restrict 消息

5、156,级别15,状态1,第13 行 关键字Restrict 附近有语法错误。 例6drop database testStudCour3 cascade 消息156,级别15,状态1,第13 行 关键字cascade 附近有语法错误。1.2 基本表的定义、删除与修改1.2.1 定义基本表 先执行 create database stud_cour 后执行 例7 create table stud_cour.dbo.student(sno nchar(9) primary key, sname nchar(20) not null, ssex nchar(2), Sage int, sdept

6、 nchar(20)例8create table stud_cour.dbo.Course(Cno nchar(2) primary key,Cname nchar(10) not null,Cpno nchar(2), Ccredit smallint)例9create table stud_cour.dbo.SC(Sno nchar(9),Cno nchar(2),Grade smallint,primary key (Sno,Cno),foreign key (sno) references Student(sno),foreign key (cno) references Course

7、(cno)1.2.2 修改基本表例10 alter table stud_cour.dbo.student add S_inschool Date例11 alter table stud_cour.dbo.student alter Column ssex smallint例12 alter table stud_cour.dbo.course add unique(cname)1.2.3 删除基本表例13 drop table stud_cour.dbo.course消息3726,级别16,状态1,第2 行无法删除对象stud_cour.dbo.course,因为该对象正由一个FOREIGN

8、 KEY 约束引用。例14 先执行create table stud_cour_test.dbo.Course(Cno nchar(2) primary key,Cname nchar(10) not null,Cpno nchar(2), Ccredit smallint)再执行例15 drop table stud_cour_test.dbo.Course1.3 索引的建立与删除1.3.1 索引的建立选择要建立索引的数据库对象“stud_cour”例16 create index sno_idx on student(sno)建立的索引文件可以在 student 表中的“索引”项中可以看见

9、。例17 create unique index sname_idx on student(sname)1.3.2 索引的删除例18 drop index sno_idx消息159,级别15,状态1,第6 行必须为DROP INDEX 语句指定表名和索引名。例19 drop index sno_idx on student删除的索引文件可以在 student 表中的“索引”项中可以看见。例20 drop index sname_idx on student2 数据查询2.1 单表查询例6查询全体学生的学号与姓名select sno,sname from student查询结果例6查询全体学生的

10、姓名、学号、所在系 SELECT * FROM student例6 查经过计算的值 (查询学生姓名和出生年份)SELECT Sno, 2011-sage AS SDATE FROM student 例6 查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名 SELECT Sno, Year of Birth:, 2011-Sage , LOWER(sdept) FROM studentSELECT Sno, Year of Birth: Year of Birth:, 2011-Sage 出生年份, LOWER(sdept) 所在院系 FROM studentSELECT sno

11、NAME,Year of Birth: BIRTH, 2011-sage BIRTHDAY,LOWER(sdept) DEPARTMENT FROM Student选出所有选课的学生学号SELECT DISTINCT SNO FROM SC查计算机系全体学生名单SELECT sname FROM student WHERE sdept=cs查年龄20岁以下学生姓名及年龄SELECT sno,sage FROM student WHERE sage20查年龄在1820间学生姓名及年龄SELECT sname,sage FROM Student WHERE sage BETWEEN 18 AND

12、20查IS,MA,CS三个系学生姓名和性别SELECT sname,ssex FROM student WHERE sdept IN(IS,MA,CS)查既不是IS,MA,也不是CS系的学生姓名和性别SELECT sname,ssex FROM student WHERE sdept NOT IN(IS,MA,CS)学号为200215121的学生情况SELECT * FROM student WHERE SNO LIKE 200215121查姓刘学生姓名性别SELECT sname,ssex FROM student WHERE sname LIKE 刘%.查年龄在2029间的学生姓名和年龄S

13、elect sname,sage from student where sage like 2_ cs系年龄在以下的学生姓名Select sname from student where sdept=cs and sage85n查询选修1或2且不低于分的学生SELECT * FROM Sc WHERE (Cno=1OR Cno=2) AND Grade=70查选修了3号课程的学生的平均成绩Select avg(grade) 平均分 from sc where cno=3;求200215121学生的总分和平均分SELECT SUM(Grade) 总分,AVG(Grade) 平均分 FROM Sc WHERE Sno=200215121求计算机系的学生总数 SELECT COUNT(Sno) 计算机系人数 FROM Student WHERE SDept=CS或SELECT COUNT(*) 计算机学生数 FROM Student WHERE sDept=CS查询共有

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文 > 思想汇报

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号