第一篇:数据库实验一
实验一:认识DBMS 系统
1、实验目的
(1)通过对SQL Server 2005/2008 数据库管理系统的使用,了解DBMS 的工作原理和系统 构架。
(2)熟悉SQL Server 提供的管理工具
(3)熟悉使用SQL Server Management Studio 创建数据库对象
2、实验平台
2.1 操作系统:
Windows XP 或者Windows 2003 Server。2.2 数据库管理系统:
选择安装数据库管理系统之前,请仔细看清硬件的配置要求以及操作系统的版本,确定安 装哪个版本的SQL Server。实验内容及要求
3.1 安装 SQL Server 1.在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。2.理解默认实例、命名实例的含义
3.了解SQL Server 的身份认证模式,初步了解SQL Server 的安全性。4.了解SQL Server 提供的服务。5.检查SQL Server 安装是否成功。
3.2 管理和使用 SQL Server 了解 SQL Server 如何通过它提供的工具对数据库服务器进行管理和使用的。
1、启动、暂停和停止SQL Server 学会运用 SQL Server 配置管理或SQL Server Management Studio 启动和停止SQL Server 的
各种服务。
2、了解SQL Server 的管理工具
初步了解SQL Server 的提供了哪些主要管理工具和它们的功能。
3、学会使用SQL Server 联机丛书
学会 SQL Server 联机丛书查询SQL 命令语法格式、SQL Server 数据库的概念、术语等内 容。
3.3 熟悉使用SQL Server Management Studio 了解 SQL Server Management Studio 的基本用法,能熟练使用它管理数据库服务器和数据 库对象。
1、可视化图形界面的操作
熟悉使用 SQL Server Management Studio 中的对象资源管理器,熟悉其中列出的各类信息 的含义,学会查看各种信息。
2、查询编辑器的使用
熟悉使用查询编辑器,了解如何编写SQL 脚本,如何运行SQL 脚本。
3.4 创建 SQL Server 数据库 通过创建数据库,掌握使用SQL Server Management Studio 创建数据库的方法,了解SQL Server 数据库的构成。3.1 创建数据库
1.使用图形界面创建数据库系
创建一个数据库,掌握使用图形界面创建数据库的步骤,了解其中各参数的含义。2.使用SQL 语句创建数据库
使用查询编辑器编写并运行创建数据库的SQL 语句,掌握SQL 语句的语法格式和主要参 数的含义。
3.2 了解数据库系统的构架
1.了解数据库系统的逻辑组件:
它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。今后将学习如 何操作这些数据库对象。2.了解数据库的物理组件:
思考数据库物理存储的存储单位是什么,数据主要以什么方式存放,如何确定数据的存放 位置。
3.5 创建 SQL Server 数据库中的表
通过创建表,掌握使用SQL Server Management Studio 创建表方法,了解SQL Server 数据 库的数据类型,以及表中数据的维护。3.1 创建数据库表
1.使用图形界面创建表
在数据库中创建Student、Course 和SC 表,掌握使用图形界面创建表的方法。2.掌握如何查询表的各种信息。3.了解SQL Server 提供的数据类型
通过查询联机手册,了解SQL Server 提供了哪些数据类型,以及他们的用法。3.2 维护表中的数据
使用图形界面在Student、Course 和SC 输入分别输入若干行数据,熟练掌握数据输入、修 改和删除的方法。
使用 SSMS 创建数据库和表示例: 1.连接到服务器
在”Microsoft SQL Server 2008” 程序组中选择”SQL Server Management Studio”, 进入如下 的”连接到服务器”界面: 选择要连接的服务器名称, 点击“连接”按钮。若使用“SQL Server 身份验证”,则需要输 入用户名和密码。连接成功则进入SSMS。2.创建数据库
鼠标右击“数据库”弹出快捷菜单。
选择“新建数据库”,进入“新建数据库”界面:
在“数据库名称”输入框中输入数据库名称:test,点击“确定”,即可创建数据库。展开“数据库”,创建的数据库将显示在列表中,如下图中的“test”。3.创建表
创建学生-课程数据库中的三个表student、course 和sc。展开“test”,鼠标右击“表”弹出快捷菜单,选择“新建表”,进入“表设计器”窗口,如下图。
在“表设计器”窗口中,在“列名”列中输入列名称,在“数据类型”列中选择列的数据 类型,在“允许Null 值”列中选择是否允许空值。每一行定义一列。输入完后,关闭“表设计器”窗口,系统提示: 选择“是”,进入“选择名称”窗口:
在窗口中输入表的名称”student”,点击“确定”。
展开“test”下的“表”,若创建成功,则可显示出创建的表,如下图: 同样的方式,创建Course 和SC 表。4.输入、修改和删除数据行
(1)输入:将student、course 和sc 三个表的数据输入到数据库中。鼠标右击“Student”表,弹出快捷菜单。
选择“编辑前200 行”,进入“表编辑”窗口:
新建表
在“表编辑”窗口中,将鼠标定位到第一行,依次输入各列的值。当第一列输入完后,将 鼠标移到第二行,即可开始输入新行。此时第一行的数据已保存在数据库中。同样可依次输入
其它行。
(2)修改:“表编辑”窗口是一个交互式编辑窗口,可直接修改其中的数据。当鼠标离开 所修改的行后,该行的数据将保存到数据库中。(3)删除:
选择要删除的行,鼠标右击该行,弹出快捷菜单,选择“删除”: SSMS 提示:
选择“是”将删除指定的行。
同样,输入Course 和SC 表中的数据。5.查看数据
鼠标右击要查看的表,在快捷菜单中选择“选择前1000 行”,进入如下的查询窗口,其中显示出了表中的数据行。
第二篇:数据库实验一
山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
实验一 创建数据库
一.实验目的
1.学会数据表的创建; 2.加深对表间关系的理解;
3.理解数据库中数据的简单查询方法和应用。二.实验内容
1.实验数据库中涉及到四个表供应商表S、零件表P、工程表J、供应关系表SPJ。每个表的结构如下:
create table S(SNO char(10)PRIMARY KEY, SNMAE VARCHAR(10)UNIQUE,STATUS CHAR(10), CITY CHAR(10));
create table P(PNO CHAR(10)PRIMARY KEY, PNAME VARCHAR(10), COLOR CHAR(10),WEIGHT INT);
CREATE TABLE J(JNO CHAR(10)PRIMARY KEY, JNAME VARCHAR(10), CITY CHAR(10));
CREATE TABLE SPJ(SNO CHAR(10), PNO CHAR(10), JNO CHAR(10), QIT INT,PRIMARY KEY(SNO,PNO,JNO),FOREIGN KEY(SNO)REFERENCES S(SNO),FOREIGN KEY(PNO)REFERENCES P(PNO),FOREIGN KEY(JNO)REFERENCES J(JNO),);山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
SELECT * FROM SPJ;
INSERT
INTO S(SNO,SNMAE,STATUS,CITY)values('S1','精益','20','天津');INSERT
INTO S(SNO,SNMAE,STATUS,CITY)values('S2','盛锡','10','北京');INSERT
INTO S(SNO,SNMAE,STATUS,CITY)values('S3','东方红','30','北京');INSERT
INTO S(SNO,SNMAE,STATUS,CITY)values('S4','丰泰盛','20','天津');INSERT
INTO S(SNO,SNMAE,STATUS,CITY)values('S5','为民','30','上海');
SELECT * FROM S;
INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P1','螺母','红',12);INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P2','螺栓','绿',17);INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P3','螺丝刀','蓝',14);INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P4','螺丝刀','红',14);INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P5','凸轮','蓝',40);INSERT
INTO P(PNO,PNAME,COLOR,WEIGHT)VALUES('P6','齿轮','红',30);
SELECT * FROM P;SELECT * FROM S;山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
INSERT
INTO J(JNO,JNAME,CITY)VALUES('J1','三建','北京');INSERT
INTO J(JNO,JNAME,CITY)VALUES('J2','一汽','长春');INSERT
INTO J(JNO,JNAME,CITY)VALUES('J3','弹簧厂','天津');INSERT
INTO J(JNO,JNAME,CITY)VALUES('J4','造船厂','天津');INSERT
INTO J(JNO,JNAME,CITY)VALUES('J5','机车厂','唐山');INSERT
INTO J(JNO,JNAME,CITY)
VALUES('J6','无线电厂','常州');INSERT
INTO J(JNO,JNAME,CITY)
VALUES('J7','半导体厂','南京');
SELECT * FROM J;
INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S1','P1','J1',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S1','P1','J3',100);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S1','P1','J4',700);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S1','P2','J2',100);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S2','P3','J1',400);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
VALUES('S2','P3','J2',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S2','P3','J4',500);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S2','P3','J5',400);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S2','P5','J1',400);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S2','P5','J2',100);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S3','P1','J1',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S3','P3','J1',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S4','P5','J1',100);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S4','P6','J3',300);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S4','P6','J4',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S5','P2','J4',100);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S5','P3','J1',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S5','P6','J2',200);INSERT
INTO SPJ(SNO,PNO,JNO,QIT)VALUES('S5','P6','J4',500);山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
SELECT * FROM SPJ;
CREATE UNIQUE INDEX Ssno ON S(SNO);CREATE UNIQUE INDEX Ppno ON P(PNO);CREATE UNIQUE INDEX Jjno ON J(JNO);
CREATE UNIQUE INDEX SPJspj ON SPJ(SNO,PNO,JNO);
执行结果为: S表
P表
J表
山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
SPJ表
表的结构如下:
CREATE TABLE Student(SNO CHAR(10)PRIMARY KEY, SNAME CHAR(10)UNIQUE, SSEX CHAR(2), SAGE SMALLINT, SDEPT CHAR(20));
CREATE TABLE Course(CNO CHAR(4)PRIMARY KEY, CNAME CHAR(40)NOT NULL, CPNO CHAR(4), CCREDIT SMALLINT,);
2.实验数据库中涉及到三表学生关系Student, 课程关系Course, 选修关系SC。每个山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
CREATE TABLE SC(SNO CHAR(10), CNO CHAR(4), GRADE SMALLINT,PRIMARY KEY(SNO,CNO),FOREIGN KEY(SNO)REFERENCES Student(SNO),FOREIGN KEY(CNO)REFERENCES Course(CNO));
INSERT
INTO Student(SNO,SNAME,SSEX,SAGE,SDEPT)VALUES('201215121','李勇','男',20,'CS');INSERT
INTO Student(SNO,SNAME,SSEX,SAGE,SDEPT)VALUES('201215122','刘晨','女',19,'CS');INSERT
INTO Student(SNO,SNAME,SSEX,SAGE,SDEPT)VALUES('201215123','王敏','女',18,'MA');INSERT
INTO Student(SNO,SNAME,SSEX,SAGE,SDEPT)VALUES('201215125','张立','男',19,'IS');
INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('1','数据库','5',4);INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('2','数学','',2);INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('3','信息系统','1',4);INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('4','操作系统','6',3);INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('5','数据结构','7',4);INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('6','数据处理','',2);山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
INSERT
INTO Course(CNO,CNAME,CPNO,CCREDIT)VALUES('7','PASCAL语言','6',4);
select * from Course;
INSERT
INTO SC(SNO,CNO,GRADE)VALUES('201215121','1',92);INSERT
INTO SC(SNO,CNO,GRADE)VALUES('201215121','2',85);INSERT
INTO SC(SNO,CNO,GRADE)VALUES('201215121','3',88);INSERT
INTO SC(SNO,CNO,GRADE)VALUES('201215122','2',90);INSERT
INTO SC(SNO,CNO,GRADE)VALUES('201215122','3',80);
select * from SC;
执行结果: Student表
山东建筑大学 计算机学院 实验报告
班级 姓名: 学号: 实验成绩:
课程: 数据库系统概论 同组者: 实验日期:2018年3月3日
Course表
SC表
三.实验总结
第三篇:数据库上机实验一思考
思考四个问题:你创建的数据库文件在哪里,找到它,copy到自己U盘上关于主码,你可以在实验中输入两个相同的学号,看可不可以,为什么 3 打开某张表,看看属性和元组的区别创建的这些表是逻辑模型的表现还是概念模型的表现
第四篇:数据库实验
实验1.1 使用SQL Server工具(Microsoft SQL Server Management Studio Express)管理数据库 实验内容:
(1)使用SSMS(SQL Server Management Studio)加入实验数据库。(2)使用SSMS可视化建立、修改和删除数据库、表。(3)使用SSMS对数据库进行备份和恢复。
(4)使用SSMS对表进行查询、插入、修改、删除。实验步骤:
(1)加入School数据库。(2)建立Test数据库。
(3)在数据库中建立人员表PERSON(P#,Pname,Page)。更改表设置P#为主键,增加属性Ptype(类型是CHAR,长度是10)。
(4)用SSMS的查询功能(新建查询)对PERSON表进行查询、插入、修改、删除等操作:首先插入两条记录;修改第二条记录;删除第二条记录。(5)备份Test数据库。(6)删除表PERSON。(7)恢复Test数据库。(8)删除Test数据库。
第五篇:数据库实验
3.实验步骤
在学生选课数据库中实现其查询操作,写出T-SQL语句(注:学生选课数据库为前三次实验课所建立的数
据库)
一、简单查询实验
(1)查询选修了课程的学生学号。
(2)查询选修课程号为0101的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按
学号升序排列。
(3)查询选修课程号为0101的成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。
二、连接查询实验
(1)查询每个学生的情况以及他(她)所选修的课程。
(2)查询选修离散散学课程且成绩为90分以上的学生学号、姓名及成绩。
(3)查询每一门课的间接先行课(即先行课的先行课)
三、嵌套查询操作
(1)查询0101课程的成绩高于张林的学生学号和成绩。
(2)查询其他系中年龄小于计算机系年龄最大者的学生。
(3)查询同王洪敏“数据库原理”课程分数相同的学生的学号。
(4)查询选修了全部课程的学生的姓名。
(5)查询与学号为09001103的学生所选修的全部课程相同的学生学号和姓名。
(6)查询至少选修了学号为09001103的学生所选修的全部课程的学生学号和姓名。
四、组合查询和分组查询
(1)查找选修“计算机基础”课程的学生成绩比此课程的平均成绩大的学生学号、成绩。
(2)查询年龄大于女同学平均年龄的男同学姓名和年龄。
(3)列出各系学生的总人数,并按人数进行降序排列。
(5)查询选修计算机基础和离散数学的学生学号和平均成绩。
4、要求
请按题号依次作答,完成在word文档中,写明班级学号姓名,于周日之于周日之前发至xcf7@163.com,独立完成,严禁抄