DB1-西工大数据库实验一数据库及表的创建和管理

合集下载

实验1数据库的创建与管理

实验1数据库的创建与管理

实验1 数据库的创建与管理1.1 实验目的(1)掌握开发环境的基本功能和使用方法。

(2)掌握数据库的建立方法。

(3)掌握图形界面下的数据表设计方法。

(4)掌握数据表记录的“增删改查”方法。

(5)掌握数据库的导入导出方法。

1.2 实验内容与步骤1.2.1 建立数据库启动MS SQL SERVER 2005,并建立学生管理数据库,文件名为学生自己姓名首字母的缩写,如张大千同学缩写为ZDQ。

设置库的大小50M,日志文件大小25M的新数据库。

1.2.2数据表的设计参照教材P50页的要求逻辑设计表,为自己实现以下3个表:学生表:Student(Sno, Sname, Ssex, Sage, Sdept);课程表:Course(Cno, Cname, Credit, Semester);学生选课表:SC(Sno, Cno, Grade)设计要求:(1) 定义关系模式(包括表名,属性名,属性类型及长度);(2) 定义表的主码及外码。

1.2.3 数据表记录的“增删改查”操作至少输入学生记录10条、系别4个、课程10个,便于后续实验的数据操纵、视图设计和数据控制处理。

数据库还原:数据库备份:实验2 数据操纵 2.1 实验目的(1)掌握SQL语言中数据查询和数据更新的语句(2)掌握SQL语言中数据更新的语句(3)掌握使用SQL语句进行视图的定义的方法2.2 实验步骤2.2.1使用SQL语句完成数据查询完成教材第五章例1到例82的例题题目选出40个进行实验,并把相应的命令语句写入实验报告。

对例45、例51(两种方法(自连接、子查询))以及外连接的操作在实验报告中给出运行结果。

2.2.2 使用SQL语句完成数据更新完成教材第五章5.2节的例题中的40个,并把相应的命令语句写入实验报告并给出运行结果。

1.SELECT Sname,Sage FROM StudentSELECT Sname,Sno,Sdept FROM StudentSELECT * FROM StudentSELECT Sname,2014-Sage FROM StudentSELECT Sname,Sage FROM StudentWHERE Sage<216.SELECTStudent.Sno,Student.Sname,Student.Ssex,Student.Sage,Student.Sdept,SC. Grade FROM Student INNER JOIN SCON Student .Sno=SC.SnoSELECT Sname,Sdept,Sage FROM StudentWHERE Sage BETWEEN 20 AND 23SELECT Sname,Ssex FROM StudentWHERE Sdept IN('xinxi','tongxin','shuxue')SELECT*FROM StudentWHERE Sname LIKE'a%'SELECT*FROM StudentWHERE Sname LIKE'[abc]%'11.SELECT*FROM StudentWHERE Sname LIKE'_[1]%'SELECT*FROM StudentWHERE Sname NOT LIKE'[ab]%'SELECT Sname,Sdept FROM Student JOIN SC ON Student.Sno=SC.SnoWHERE Student.Sno NOT IN(SELECT Sno FROM SCWHERE Cno ='a001')SELECT DISTINCT Sname,Sdept FROM Student JOIN SC ON Student.Sno=SC.Sno WHERE Student.Sno IN(SELECT Sno FROM SCWHERE Cno ='100')SELECT Sname,Sdept,Grade AS'tiyu'FROM Student JOIN SC ONStudent.Sno=SC.Sno JOIN Course ON o=oWHERE Cname ='tiyu'AND Grade >(SELECT AVG(Grade)FROM SC JOIN Course ON o=oWHERE Cname='tiyu')16.SELECT Sname,Sdept FROM StudentWHERE Sdept IN(SELECT Sdept FROM StudentWHERE Sname ='a1')AND Sname !='a1'SELECT Sno,AVG(Grade)FROM SCGROUP BY SnoHAVING AVG(Grade)>(SELECT AVG(Grade)FROM SC)SELECT Student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade FROMStudent JOIN SC ON Student.Sno=SC.SnoSELECT Sname,Sage FROM StudentWHERE Sdept ='shuxue'AND Sage=(SELECT MAX(Sage)FROM Student)SELECT Sno,Grade FROM SCWHERE Cno ='100'AND Grade>(SELECT AVG(Grade)FROM SC)21.SELECT COUNT(*)'选课门数',AVG(Grade)'平均成绩'FROM SCWHERE Sno IN(SELECT Sno FROM SC JOIN Course ON o=oWHERE Cname='shujuku')GROUP BY SnoSELECT Sno,Sname FROM StudentWHERE Sno IN(SELECT Sno FROM SC JOIN Course ON o=oWHERE Cname ='shujuku')SELECT Sname,Ssex FROM StudentWHERE Sdept ='xinxi'AND Sno IN(SELECT Sno FROM SCWHERE Cno ='100')SELECT Student.Sno,Sname FROM Student JOIN SC ON Student.Sno=SC.Sno WHERE Grade >=90SELECT*FROM StudentWHERE Sdept IN(SELECT Sdept FROM StudentWHERE Sname ='a1')AND Sname !='a1'26.SELECT TOP 2 WITH TIES Cno,COUNT(*)'人数'FROM SCGROUP BY CnoORDER BY COUNT(*)ASCSELECT TOP 3 WITH TIES Sname,Sdept,Grade FROM Student JOIN SC ON Student.Sno=SC.Sno JOIN Course ON o=oWHERE Cname ='shujuku'ORDER BY Grade DESCSELECT TOP 3 WITH TIES Sname,Sage,Sdept FROM StudentORDER BY Sage DESCSELECT COUNT(*)FROM Student JOIN SC ON Student.Sno=SC.SnoWHERE Sdept ='xinxi'GROUP BY Student.SnoORDER BY COUNT(*)DESCSELECT Student.Sno,COUNT(o)FROM Student LEFT JOIN SC ON Student.Sno=SC.SnoWHERE Sdept ='xinxi'GROUP BY Student.SnoORDER BY COUNT(o)DESC31. SELECT Sname,Ssex FROM Student LEFT JOIN SC ON Student.Sno=SC.Sno WHERE Sdept ='xinxi'AND Cno IS NULLSELECT Cname FROM SC RIGHT JOIN Course ON o=oWHERE Sno IS NULLSELECT Student.Sno,Sname,o,Grade FROM SC RIGHT JOIN Student ON SC.Sno=Student.SnoSELECT Cname,Credit FROM CourseWHERE Credit =(SELECT Credit From CourseWHERE Cname ='gaoshu')AND Cname !='gaoshu'SELECT Sdept,AVG(Grade)FROM SC JOIN Student ON SC.Sno=Student.Sno GROUP BY Sdept36. SELECT Sname,Sdept FROM Student JOIN SC ON Student.Sno=SC.Sno JOIN Course ON o=oWHERE Cname='shujuku'SELECT Sname,Sdept FROM Student JOIN SC ON Student.Sno=SC.Sno JOIN Course ON o=oWHERE Cname='shujuku'AND Sdept ='xinxi'SELECT Sname,Cno,Grade FROM Student JOIN SC ON Student.Sno=SC.Sno WHERE Sdept ='xinxi'SELECT Sdept,COUNT(*)FROM StudentWHERE Sage <=20GROUP BY Sdept40.SELECT Sno,COUNT(*)FROM SCGROUP BY SnoHAVING COUNT(*)>=2。

数据库实验报告 创建与管理数据库

数据库实验报告 创建与管理数据库
size=5,
maxsize=30,
filegrowth=1
)
实验结果:
4删除已创建的数据库students
(1)在SQL Server Management Studio中新建一个查询设计器的页面。
(2)输入以下程序段并执行此查询
Drop database students
实验结果:
5、(1)在SQL Server Management Studio中新建一个查询设计器的页面。
(2)输入以下程序段并执行此查询
sp_rename ‘student1’,’student_BACK’
实验总结:
本章主要内容是创建和管理数据库,需要加强对基础知识的学习,要熟练掌握SQL Server Management Studio软件。
实验评语:
实验成绩
教师签字
西北师范大学计算机科学与工程学院学生实验报告
学号
专业
计算机科学与技术
姓名
课程名称
数据库应用与开发
班级
实验名称
创建与管理数据库
课程类型
专业限选课
实验目的:
掌握和了解各种数据类型的特点和用途,数据表的创建,修改,管理与数据结构转换,以及实现数据完整性的方法和基本操作。
实验内容:
1、在中创建名为test03的步骤如下:
(2)在SQL Server Management Studio中新建一个查询设计器的页面。
(3)输入以下程序并执行查询。
实验结果:
3、实现步骤如下:
(1)在D盘创建一个新的文件夹,名称为DATA。
(2)在SQL Server Management Studio中创建一个查询设计器的页面。

DB1-西工大数据库实验一数据库及表的创建和管理

DB1-西工大数据库实验一数据库及表的创建和管理

《数据库原理》实验报告题目:实验一学号姓名班级日期数据库和表的创建与管理一.实验内容、步骤以及结果1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分)数据库和表的要求(第四版教材第二章习题5要求的数据库)数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表图2.1 S表(供货商表)图2.2 P表(零件表)图2.4 SPJ表(供应情况表)图2.3 J表(工程项目表)完成以下具体操作:(1)创建SPJ数据库,初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名和物理文件名均采用默认值。

(2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。

(提示:最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名)(4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。

(5)删除已经创建的工程项目表(J表)。

(6)删除SPJ数据库。

(可以在系统默认的数据存储文件夹下查看此时SPJ数据库对应的mdf,ldf文件是否存在)(7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。

(还原数据库)(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。

(附加)(9)将SPJ数据库的文件大小修改为100MB。

(10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类型。

实验具体步骤:(1)创建SPJ数据库:右击数据库-->新建数据库-->填写相应参数-->点击确定。

如下图:(2)在SPJ数据库中创建四张表:单击数据库SPJ-->右击‘表’-->新建表-->填写参数-->确定。

数据库实验1:数据库的创建与管理

数据库实验1:数据库的创建与管理

实验1:数据库物理设计----数据库的创建与管理1.实验目的本章的实验是主要学习Microsoft SQL Server 2000数据库的物理设计方法。

通过本实验,了解Microsoft SQL Server 2000数据库的组成,理解数据库的概念及物理存储结构设计方法;掌握Microsoft SQL Server 2000的数据库的建立方法,包括利用“企业管理器”创建数据库的方法和使用Transact—SQL创建数据库的方法;最后能够熟练地在Microsoft SQL Server 2000中,进行数据库的物理设计。

2.实验要求通过对创建数据库方法的学习,掌握创建数据库的基本语法,了解数据库系统文件的存储结构,系统文件可以包含一个数据文件和一个事务日志,也可以包含多个数据文件及多个事务日志或文件组,进而创建“教学管理”数据库,并且对该数据库进行以下操作:更新,添加,删除数据文件等,从而熟练掌握数据库的结构并对数据库进行的各种基本操作。

3.实验环境与实验器材:计算机,网络环境,投影设备。

实验相关软件:Window XP、SQL Server 2000。

4.实验内容及步骤1)使用查询分析器中创建指定单一数据主文件和日志文件的数据库在安装了Microsoft SQL Server 2000之后,从“开始”菜单中打开“查询分析器”,进入“SQL查询分析器”窗口后,在“连接到SQL Server”对话框中,选择“local”,单击“确定”按钮,进入查询窗口,创建指定数据文件和事务日志文件的“教学管理”数据库,输入如下Transact—SQL语句:create database 教学管理onprimary(name=教学管理_dat,filename='D:\数据库应用实验教程\数据\教学管理.mdf',size=5MB,maxsize=50MB,filegrowth=2MB)log on(name=教学管理_log,filename='D:\数据库应用实验教程\数据\教学管理.ldf',size=5MB,maxsize=100MB,filegrowth=2MB)运行,系统在D盘自动为主数据文件和事务日志文件分配要求的磁盘空间,运行结果如下:2)使用查询分析器创建指定多个数据主文件和日志文件的数据库在安装了Microsoft SQL Server 2000之后,从“开始”菜单中打开“查询分析器”,进入“SQL查询分析器”窗口后,在“连接到SQL Server”对话框中,选择“local”,单击“确定”按钮,进入查询窗口,创建指定数据文件和事务日志文件的“教学管理1”数据库,输入如下Transact—SQL语句:create database 教学管理1onprimary(name=教学管理1_1dat,filename='D:\数据库应用实验教程\数据\教学管理11.mdf',size=5MB,maxsize=50MB,filegrowth=2MB),(name=教学管理1_2dat,filename='D:\数据库应用实验教程\数据\教学管理12.mdf',size=2MB,maxsize=50MB,filegrowth=2MB),(name=教学管理1_3dat,filename='D:\数据库应用实验教程\数据\教学管理13.mdf',size=3MB,maxsize=50MB,filegrowth=2MB)log on(name=教学管理1_1log,filename='D:\数据库应用实验教程\数据\教学管理11.ldf',size=5MB,maxsize=100MB,filegrowth=2MB),(name=教学管理1_2log,filename='D:\数据库应用实验教程\数据\教学管理12.ldf',size=3MB,maxsize=100MB,filegrowth=1MB)运行,系统在D盘自动为主数据文件和事务日志文件分配要求的磁盘空间,运行结果如下:3)实用查询分析器文件组创建数据库在安装了Microsoft SQL Server 2000之后,从“开始”菜单中打开“查询分析器”,进入“SQL查询分析器”窗口后,在“连接到SQL Server”对话框中,选择“local”,单击“确定”按钮,进入查询窗口,创建指定数据文件和事务日志文件的“教学管理2”数据库,输入如下Transact—SQL语句:create database 教学管理2 on primary(name=教学管理2_1dat,filename='D:\数据库应用实验教程\数据\教学管理21.mdf',size=5MB,maxsize=50MB,filegrowth=2MB),(name=教学管理2_2dat,filename='D:\数据库应用实验教程\数据\教学管理22.mdf',size=3MB,maxsize=50MB,filegrowth=1MB),filegroup 教学管理2fg_2(name=教学管理2fg_21dat,filename='D:\数据库应用实验教程\数据\教学管理2fg21.ldf',size=5MB,maxsize=50MB,filegrowth=2MB),(name=教学管理2fg_22dat,filename='D:\数据库应用实验教程\数据\教学管理fg_22dat.ldf', size=3MB,maxsize=50MB,filegrowth=2MB),filegroup 教学管理2fg_3(name=教学管理2fg_31dat,filename='D:\数据库应用实验教程\数据\教学管理2fg31.ldf', size=2MB,maxsize=50MB,filegrowth=1MB),(name=教学管理2fg_32dat,filename='D:\数据库应用实验教程\数据\教学管理fg_32dat.ldf', size=2MB,maxsize=50MB,filegrowth=1MB)log on(name=教学管理2_1log,filename='D:\数据库应用实验教程\数据\教学管理21.ldf',size=5MB,maxsize=100MB,filegrowth=2MB),(name=教学管理2_2log,filename='D:\数据库应用实验教程\数据\教学管理22.ldf',size=5MB,maxsize=100MB,filegrowth=2MB)运行,系统在D盘自动为主数据文件和事务日志文件分配要求的磁盘空间,运行结果如下:4)使用查询分析器对数据库的编辑①为已经建立的数据库添加新数据文件在“SQL查询分析器”中,输入如下Transact—SQL语句,修改已建立的“教学管理”数据库,为它添加一个5MB大小的新数据文件“教学管理A”。

db实验——精选推荐

db实验——精选推荐

db实验数据库技术及应⽤课程实验实验1 创建数据库和表实验⽬的(1)了解SQL Server数据库的逻辑结构和物理结构;(2)了解表的结构特点;(3)了解SQL Server的基本数据类型;(4)了解空值概念;(5)学会在企业管理器中创建数据库和表;(6)学会使⽤T-SQL语句创建数据库和表。

实验要求(1)能够创建数据库的⽤户必须是系统管理员,或是被授权使⽤CREATE DATABASE语句的⽤户。

(2)创建数据库必须要确定数据库名、所有者(即创建数据库的⽤户)、数据库⼤⼩(最初的⼤⼩、最⼤的⼤⼩、是否允许增长及增长⽅式)和存储数据库的⽂件。

(3)确定数据库包含哪些表,以及所包含的各表的结构,还要了解SQL Server的常⽤数据类型,以创建数据库的表。

(4)了解两种常⽤的创建数据库、表的⽅法,即在企业管理器中创建和使⽤T-SQL的CREATE DATABASE语句。

实验步骤1、创建的产品销售数据库,数据库名为CPXS。

数据库CPXS包含下列3个表:l 产品表:表名为CP,描述产品信息;l 销售商表:表名为XSS,描述销售商信息;l 产品销售表:表名为XSCP,描述产品的销售信息。

各表的结构分别如表2-1~表2-3所⽰。

表2-1产品表(CP)表结构表2-2销售商(XSS)表结构表2-3产品销售(XSCP)表结构实验2 数据插⼊、修改和删除实验⽬的(1)学会在企业管理器中对数据库表进⾏插⼊、修改和删除数据操作;(2)学会使⽤T-SQL语句对数据库表进⾏插⼊、修改和删除数据操作;(3)了解数据更新操作时要注意数据完整性;(4)了解T-SQL语句对表数据操作的灵活控制功能。

实验要求(1)了解对表数据的插⼊、删除、修改都属于表数据的更新操作。

对表数据的操作可以在企业管理器中进⾏,也可以由T-SQL语句实现。

(2)掌握T-SQL中⽤于对表数据进⾏插⼊、修改和删除的命令分别是INSERT、UPDA TE和DELETE(或TRANCATE TABLE)。

西北工业大学数据库实验报告

西北工业大学数据库实验报告

1.ODBC配置以及程序调试:(50分)(1)配置一个ODBC数据源,要求数据源名称:student,其中包含s(学生信息)表。

用系统工具配置ODBC,点击“添加”:出现以下对话框,选中SQL Sever,点击完成:在出现的对话框中设置属性,如图,点击下一步:点击下一步后出现如下,更改默认数据库,点击下一步:在出现的对话框中点击测试连接后出现测试成功的对话框:点击确定退出ODEC数据源管理器。

(2)阅读并运行实验给出的例子程序,理解ODBC编程,要求简单写出自己对这段程序的理解或者流程图,并且请给出程序运行结果示例图。

对程序的流程:1.定义句柄和变量(句柄包括环境句柄,连接句柄,语句句柄)2.初始化环境(1).分配环境句柄(2).设置管理环境属性(3).连接数据库3.建立连接(1)分配连接句柄(2)连接失败则返回错误值4.初始化语句句柄5.执行语句6.处理结果集合7.中止处理(1).释放语句句柄(2).断开数据源(3).释放连接句柄(3).释放环境句柄结果显示:2.参考给出的ODBC编程示例,使用ODBC技术,编写一个简单的程序,包含对数据库SPJ的连接,查询,插入,修改和删除。

(50分)插入数据:insert into s values('S6','胜利','47','北京')检验数据库内:删除数据:Delete from s where sno=‘S1’查询数据:Select pno,pname from P更新数据:update s set status='100' where sno='S33.用JDBC实现对数据库student的连接,查询,插入,修改和删除。

(选做实验)二.实验中出现的问题以及解决方案(对于未解决问题请将问题列出来)除了标题内容以外,该部分内容中还可以写对于实验的一些感受,建议,意见等。

如何创建和管理数据库表

如何创建和管理数据库表

如何创建和管理数据库表在现代信息技术的发展中,数据库已成为我们日常工作中不可或缺的一部分。

数据库表的创建和管理是数据库设计和开发的重要环节,本文将重点探讨如何创建和管理数据库表。

一、数据库表的创建数据库表的创建是数据库设计与开发的第一步,正确的表设计将直接影响数据库的性能和扩展性。

在创建数据库表时,我们需要考虑以下几个方面:1. 数据库表的命名规范在创建数据库表时,给表起一个清晰、有意义的名称是非常重要的。

表的名称应该能够准确地描述该表所存储数据的内容,同时应遵循命名规范,一般建议使用小写字母和下划线的组合。

2. 字段的选择和设计在创建数据库表时,需要选择适当的字段来存储数据。

字段应能够充分描述数据的特征,并且应考虑字段的数据类型、长度、约束条件等因素。

根据实际需求,我们可以选择整数型、字符型、日期型等不同的数据类型来存储不同的数据。

3. 主键的定义主键是数据库表中的唯一标识符,用于区分表中的记录。

主键应该是唯一的、不可为空的,并且能够准确地标识一条记录。

在创建数据库表时,我们需要选择一个或多个字段作为主键,并为其添加主键约束,以保证数据的完整性和一致性。

4. 索引的添加索引是数据库中提高查询效率的重要手段,通过创建索引可以加快对表中数据的访问速度。

在创建数据库表时,我们可以根据查询的需求选择适当的字段添加索引,以提高查询性能。

二、数据库表的管理数据库表的管理包括对表的增删改查等操作,正确的管理可以提高数据库的性能和安全性。

以下是表的管理的几个方面:1. 数据库表的备份和恢复数据库表的备份是非常重要的,它可以防止数据丢失和数据库故障的发生。

在创建数据库表后,定期进行数据备份,并将备份文件存储在安全的地方。

同时,当数据库出现故障时,可以通过备份文件进行数据恢复,保证数据的完整性。

2. 数据库表的扩展和修改随着业务的发展,数据库表的需求可能会发生变化,我们需要对表进行扩展和修改。

在对数据库表进行扩展和修改时,需要考虑到数据的完整性和一致性。

数据库表的创建与管理操作指南

数据库表的创建与管理操作指南

数据库表的创建与管理操作指南1. 引言数据库表是存储和组织数据的重要组成部分。

在创建和管理数据库表时,我们需要遵循一些基本原则和最佳实践,以确保数据库的性能、可维护性和安全性。

本文将为您提供数据库表的创建与管理操作指南,帮助您正确地进行数据库表的设计和管理。

2. 数据库表的创建在创建数据库表之前,我们需要进行一些必要的准备工作。

首先,我们需要明确数据库中需要存储的数据类型和结构。

其次,我们需要了解数据库系统的特点和限制,例如支持的数据类型、最大表大小等。

2.1 数据类型选择数据库系统通常支持多种数据类型,包括整数、字符串、日期和时间等。

在选择数据类型时,我们应根据实际需求和数据特性进行选择,以节约存储空间和提高查询效率。

2.2 表的设计在进行表的设计时,我们需要关注以下几个方面:- 数据表的命名:选择一个有意义且易于理解的表名,能够准确反映表所存储的数据内容。

- 数据字段的命名:选择有意义的字段名,能够清晰地描述字段的含义。

避免使用过长或含有特殊字符的字段名。

- 主键的选择:每个表中应当有一个主键,用于唯一标识表中的每一行数据。

主键可以是一个或多个字段的组合。

- 索引的创建:为经常用于查询条件的字段创建索引,可以提高查询效率。

- 外键的使用:在存在关联关系的表之间,可以使用外键来维护数据的完整性和逻辑关系。

3. 数据库表的管理一旦数据库表被创建,我们需要进行有效和安全的管理以确保数据的完整性和系统的高性能。

3.1 表的修改在进行表的修改时,我们需要注意以下几点:- 添加字段:可以使用ALTER TABLE语句向表中添加新字段。

添加字段时,需要仔细考虑如何维护已有数据的完整性。

- 修改字段:使用ALTER TABLE语句可以修改表中的字段。

修改字段时,需要注意是否会影响已有数据的完整性和查询性能。

- 删除字段:使用ALTER TABLE语句可以删除表中的字段。

删除字段时,需要确保不影响已有数据的完整性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库原理》实验报告题目:实验一学号姓名班级日期数据库和表的创建与管理一.实验内容、步骤以及结果1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分)数据库和表的要求(第四版教材第二章习题5要求的数据库)数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表图2.1 S表(供货商表)图2.2 P表(零件表)图2.4 SPJ表(供应情况表)图2.3 J表(工程项目表)完成以下具体操作:(1)创建SPJ数据库,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名和物理文件名均采用默认值。

(2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。

(提示:最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名)(4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。

(5)删除已经创建的工程项目表(J表)。

(6)删除SPJ数据库。

(可以在系统默认的数据存储文件夹下查看此时SPJ数据库对应的mdf,ldf文件是否存在)(7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。

(还原数据库)(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。

(附加)(9)将SPJ数据库的文件大小修改为100MB。

(10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类型。

实验具体步骤:(1)创建SPJ数据库:右击数据库-->新建数据库-->填写相应参数-->点击确定。

如下图:(2)在SPJ数据库中创建四张表:单击数据库SPJ-->右击‘表’-->新建表-->填写参数-->确定。

如下图:(3)备份数据库SPJ (第一种方法):右击数据库SPJ-->任务-->备份-->填参数-->确定。

如下图:的数据文件、日志文件等)-->复制到其他文件夹进行备份,如下图:择删除。

如下图(6)删除SPJ数据库:右击数据库SPJ--》选择删除命令。

如下图(7)利用备份过的bak备份文件还原刚才删除的SPJ数据库:右击数据库--》选择还原数据库命令--》填写参数--》确定。

如下图(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库:找到备份右击数据库--》选择还原数据库命令--》填写参数--》确定。

(9)将SPJ数据库的文件大小修改100M:右击数据库--》右击SPJ--》填写参数--》右击属性--》选择页点击文件--》修改参数,如下图:点击SPJ--》点击表--》点击s表--》修改参数,如下图:2.利用SQL语言创建和删除数据库和数据表(50分,每小题5分)数据库和表的要求数据库名:Student,其中包含三个表:S:学生基本信息表;C:课程基本信息表;SC:学生选课信息表。

各表的结构以及数据如下所示:图2.5 S表(学生表)图2.7 SC表(选课表)图2.6 C表(课程表)完成以下具体操作:(1)用SQL语句创建如图2.5-图2.7要求的数据库Student,初始大小为20MB,最大为100MB,数据库自动增长,增长方式是按10M兆字节增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名和物理文件名,日志文件名请自定义。

(2)用SQL语句创建上述的三张表,各个字段的数据类型请自己确定,每张表只要有主键约束即可,不要其他约束。

不用输入数据。

(3)用SQL中的backup 语句将数据库Student备份到一个bak文件。

(提示:backup database student to disk)(4)用SQL语句删除创建的表。

(5)将SPJ数据库定义时使用的文件(扩展名为mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份(复制)后,用SQL语句删除创建的数据库。

(6)用SQL中的sp_attache_db语句完成对数据库Student的附加。

(通过该方式完成数据库的恢复时,使用的备份文件是第5)小题中备份好的数据文件、日志文件等,具体用法:exec sp_attache_db )(7)先删除SPJ库,再用SQL中的restore 语句还原刚才备份的数据库Student。

(提示:restore database student from disk)(8)用SQL语言修改数据库Student,给Student数据库添加一个文件组TestFG1,然后将两个5 MB 的文件添加到该文件组。

(提示:alter database)(9)修改S表,增加一个表示联系电话的字段sPhoneNo,数据类型为字符串类型。

(10)利用SQL Server Management Studio的生成脚本功能(选中Student库->右键菜单“任务”-> “生成脚本”),自动生成S表的创建脚本,分析自动生成的脚本和自己写的SQL语句的异同点。

具体步骤如下:(1):创建数据库:点击新建查询--》输入SQL命令--》执行。

CREATE DATABASE StudentON(NAME=Student_data,FILENAME='D:\数据库\Student_data.mdf',SIZE=20MB,MAXSIZE=100MB,FILEGROWTH=10MB)LOG ON(NAME=Student_log,FILENAME='D:\数据库\Student_log.ldf',SIZE=2MB,MAXSIZE=5MB,FILEGROWTH=1MB)GO(2)建表:点击新建查询--》输入SQL命令--》执行。

CREATE TABLE S(sno CHAR(10),sname CHAR(10),ssex CHAR(10),sbirth CHAR(10),sdept CHAR(10))CREATE TABLE C(cno CHAR(5),cname CHAR(5),cpno CHAR(5),ccredit CHAR(5))CREATE TABLE SC(sno CHAR(5),cno CHAR(5),grade char(10))(3)备份:点击新建查询--》输入SQL命令--》执行。

USE StudentGOBACKUP DATABASE StudentTO DISK='D:\数据库\备份数据库\backup_Student'WITH INITGO(4)删除创建的表:DROP TABLE SGODROP TABLE CGODROP TABLE S CGO(5)删除数据库:USE masterGODROP DATABASE StudentGO(6)数据库附加:EXEC sp_attach_db@dbname=N'Student',@filename1=N'D:\数据库\备份数据库\Student_data.mdf',@filename2=N'D:\数据库\备份数据库\Student_log.ldf'GO(7)还原数据库:用SQL语句删除创建的数据库:USE masterGODROP DATABASE SPJGO还原数据库:lRESTORE DATABASE StudentFROM DISK='G:\数据库\DB1\备份数据库\backup_Student' WITH REPLACEGO(8)添加文件组:ALTER DATABASE TestFG1ADD FILE(NAME=TestFG1dat2,FILENAME='D:\数据库\t1dat1.ndf',SIZE= 5MB)ALTER DATABASE TestFG1ADD FILE(NAME=TestFG1dat2,FILENAME='D:\数据库\t1dat11.ndf',SIZE= 5MB)(9)修改S表:ALTER TABLE S ADD NICKNAME CHAR(20)(10)利用SQL Server Management Studio的生成脚本功能(选中Student库->右键菜单“任务”-> “生成脚本”),自动生成S表的创建脚本,分析自动生成的脚本和自己写的SQL语句的异同点。

二.实验中出现的问题以及解决方案(对于未解决问题请将问题列出来)这是第一次数据库实验,第一次切身体会编使用SQL sever,第一次写SQL语句,之前一个月对数据库这门课一直没有太大的兴趣,只觉得是无谓的学习,但是在真正接触SQL后便被折服,4小时的时间不足以完成任务,刚接触时还有些不适应但后来便越来越得心印手了。

通过这次实验,使我加深了对数据库的兴趣,锻炼了动手操作能力。

希望在以后的实验课上经过努力是自己的数据库知识越来越丰富,能力越来越强。

批阅者:批阅日期:实验成绩:批注:。

相关文档
最新文档