数据库(实验2)

合集下载

国家开放大学《数据库运维》形考作业-实验2:MySQL数据库对象管理

国家开放大学《数据库运维》形考作业-实验2:MySQL数据库对象管理

实验2 MySQL数据库对象管理1. 实验目的理解数据字典、表、索引、视图的作用,掌握数据字典的操纵方式,掌握库、表、索引、视图的操作方法。

2. 实验内容【实验2-1】查看INFORMATION_SCHEMA.SCHEMATA 表中的信息。

【实验2-2】查看INFORMATION_SCHEMA.TABLES 表中的信息。

【实验2-3】查看INFORMATION_SCHEMA.COLUMNS 表中的信息。

【实验2-4】查看INFORMATION_SCHEMA.STATISTICS 表中的信息。

【实验2-5】查看INFORMATION_SCHEMA.CHARACTER_SETS 表中的信息。

【实验2-6】查看INFORMATION_SCHEMA.COLLATIONS表中的信息。

【实验2-7】使用CREATE DABASE语句创建school数据库。

【实验2-8】将school数据库的字符集设为utf-8。

【实验2-9】在school数据库下创建stu_info表,包括stuno varchar(10)、stuname varchar(8)、stubir date、stuage int;创建表course,包括courno varchar(3)、courname varchar(10)、schyear date、credit int;创建stuandcour 表,包括stuno varchar(10)、courno varchar(3)、grade int。

【实验2-10】使用SHOW、DESCRIBE语句查看所建的表。

【实验2-11】使用ALTER TABLE语句将stuinfo表的表名改为stuinfo,并且增加stugender varchar(4)字段,将course表中courno字段的类型改为varchar(5)。

【实验2-12】将前边建的表复制到test数据库中,如果没有test数据库就新建一个。

SQL实验二:数据库查询实验报告

SQL实验二:数据库查询实验报告

实验二数据库的查询实验实验目的和要求(1)掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。

(2)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。

(3)熟练掌握数据查询中的分组、统计、计算和组合的操作方法。

实验内容和原理在实验一定义的“学生成绩数据库”中,使用T-SQL 语句完成以下查询:(1 )求计算机系学生的学号和姓名。

(2)求选修了数学的学生学号、姓名和成绩。

(3)求选修01 课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

(4)查找选修课程的平均成绩位于前三名的学生的学号。

(5)查询计算机系的姓刘且单名的学生的信息。

(6)查询至少选修两门课程的学生学号。

(7)查询学生的学号、课程号以及对应成绩与所有学生所有课程的最高成绩的百分比。

(8)查询选修“数据库”课程,且成绩在80 分以上的学生的学号和成绩。

(9)查询所有姓“王”的同学没有选修的课程名。

(请分别用exists和in完成该查询) (10)查询选修了全部课程的学生的姓名。

(请至少写出两种查询语句)(11)求选修了学生“ 95001”所选修的全部课程的学生学号和姓名。

(12)查询每一门课的间接先修课。

(13)列出所有学生所有可能的选课情况。

(14)列出每个学生的学号及选修课程号,没有选修的学生的学号也一并列出。

(15)输出与“张三”同性别并位于同一个系的所有同学的姓名。

(请至少写出两种查询语句)(16)查询至少被两名男生选修的课程名。

(17)对被两名以上学生所选修的课程统计每门课的选课人数。

要求输出课程号和选修人数,查询结果按人数降序排列;若人数相同,按课程号升序排列。

(18)列出选修课程超过 3 门的学生姓名及选修门数。

(19)检索至少选修课程号为01 和03 的学生姓名。

(20)检索至少选修课程“数学”和“操作系统”的学生学号。

(21 )查询‘操作系统'课程的最高分的学生的姓名、性别、所在系(22)查询数据结构的成绩低于操作系统的成绩的学生姓名及该生的这两门课的成绩(23)所有成绩都在70 分以上的学生姓名及所在系。

数据库实验报告

数据库实验报告

实验(一): 熟练掌握SQL语言实验目的:熟悉上机环境,创建数据库,在数据库上建立关系模式,插入数据,进行相应的查询操作。

实验内容:具体包括如下三部分。

一、熟悉上机环境。

客户/服务器结构,数据库服务器在一台NT服务器上,同学们通过客户机(操作系统为Windows 2000)上安装的SQL Server客户端程序, 使用SQL Server数据库服务器。

具体包括:1.了解SQL Server 环境。

鼠标点击开始,进入“Microsoft SQL Server→企业管理器”,点击SQL Server组下的数据库服务器(服务器名称为NEUC-201S(Windows NT)), 可以看到服务器上的圆形标志变为绿色,说明客户端程序已与服务器连接成功。

点击服务器(NEUC-201S(Windows NT))下的数据库,可以看到服务器上已建立的数据库,你可访问你有权访问的数据库,并进行相应的操作功能。

因为,数据库服务器上建有许多数据库, 每个数据库都有一些合法的用户。

2.鼠标点击开始,进入“Microsoft SQL Server→查询分析器”,输入用户名和口令,进入SQL查询分析器。

如:你登录的客户机为27号,那么请以用户名user27,口令为user27登录,登录后缺省连到数据库user27上,user27/user27是数据库user27的创建者,因此用户user27/ user27具有在数据库user27上创建表等一切权力。

3.在SQL查询分析器环境下,你就可进行SQL命令语句操作了。

二、在数据库useri上创建学生选课有关关系模式,并插入相应的数据,实现有关查询。

1.描述学生、课程情况的E-R图如下,请将其转化为用关系数据模型描述的关系模式CREA TE TABLE Student(Sno CHAR(9) PRIMARY KEY,Sname CHAR(20) UNIQUE,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));CREA TE TABLE Course(Cno CHAR(4) PRIMARY KEY,Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno) );CREA TE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARY KEY(Sno,Cno),FOREIGN KEY(Sno) REFERENCES Student(Sno), FOREIGN KEY(Cno) REFERENCES Course(Cno) );4在已建立的关系模式之上(已插入一些数据)建立主键约束,参照约束和用户定义的约束(要求学生年龄不小于14岁,不大于35岁),如果约束不能建立,请分析原因,修改后建立上述约束。

数据库原理实验2数据查询

数据库原理实验2数据查询

课程名称数据库原理实验序号 2实验项目数据查询实验地点实验学时实验类型验证性指导教师实验员专业班级学号姓名年月日成绩:A教师该学生本次实验的内容丰富,完成的操作步骤详细具体,实验结果正确,在实验报告的填写中态度十分严谨,对数据分析有自己的见解。

四、实验过程(实验步骤、记录、数据、分析)实验准备:在实验一的基础上(包括数据库的建立、定义表和添加表内容)进行实验,下面分别为depts表、students表、courses表、reports表。

一、简单的选择与投影查询1、无条件查询1.1查询全体学生的详细记录。

这是一个无条件的选择查询,其命令为:其命令为:select * from students运行结果如右图,显示整张表的内容。

1.2查询全体学生的姓名(Sname)、学号(Sno)、所在系(dno)。

这是一个无条件的投影查询,其命令为:select sname,ssexfrom students运行结果如右图,显示了表中的三列。

1.3查询全体学生的姓名(Sname)、出生年份及学号(Sno)。

其命令为:select sno,sname,2017-sage as birth from students运行结果如右图,显示了三列内容。

1.4查询全体学生的姓名、出生年份和学号,要求用小写字母表示学号中的字母。

其命令为:select sname,'birth:' title,YEAR(GETDATE())-sagebirthyear,LOWER(sno) lsnofrom students运行结果如右图,显示了四列内容。

1.5查询选修了课程的学生学号。

其命令为:select distinct snofrom reports运行结果如右图,distinct短语是为了消去查询结果中的重复值。

2、条件查询(1)比较条件1.1查询d03系全体学生的学号(Sno)和姓名(Sname)。

其命令为:select sno,snamefrom studentswhere dno='d03'运行结果如右图,显示了d03系的全体学生姓名与学号。

数据库实验答案实验二Sql

数据库实验答案实验二Sql

(1) 查找有销售记录的客户编号、名称和订单总额。

命令:SELECT a.CustomerNo,CustomerName, sum(quantity*price) orderSumFROM OrderMaster a,OrderDetail b,Customer cWHERE b.orderNo=a.orderNo AND c.CustomerNo=a.CustomerNoGROUP BY a.CustomerNo,CustomerNameORDER BY a.CustomerNo,orderSum DESC(2) 在订单明细表中查询订单金额最高的订单。

命令:SELECT top 1 orderNo,sum(quantity*price)订单金额FROM OrderDetailGROUP BY orderNoORDER BY 订单金额DESC(3) 查询没有订购商品的客户编号和客户名称。

命令:SELECT CustomerNo,CustomerNameFROM CustomerWHERE CustomerNo NOT IN (SELECT CustomerNo FROM OrderMaster)(4) 找出至少被订购3次的商品编号、订单编号、订货数量和订货金额,并按订货数量的降序排序输出。

命令:SELECT a.productNo,orderNo,quantity,(quantity*price) moneyFROM OrderDetail a,(SELECT productNoFROM OrderDetailGROUP BY productNoHA VING COUNT(*)>=3) bWHERE a.productNo =b.productNoORDER BY a.productNo,quantity DESC被订购三件以上的……SELECT b.ProductNo,orderNo,quantity,orderSum=quantity*priceFROM OrderDetail b,(SELECT ProductNo FROM(SELECT ProductNo,sum(quantity)SQfrom OrderDetail GROUP BY ProductNo)aWHERE a.SQ>3)cWHERE b.ProductNo=c.ProductNoORDER BY b.quantity DESC(5) 使用子查询查找32M DRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。

实验二 数据库的基本操作

实验二 数据库的基本操作
数据库*实验报告
实验项目名称:数据库的基本操作
成绩:
信息对数据库进行修改、查看、删除、备份、还原等操作。
1.实验目的
掌握数据库的基础知识,了解数据库的物理组织与逻辑组成情况,学习创建、修改、查看、缩小、更名、删除、备份、还原等数据库的基本操作方法。
2、“数据文件”名为KCGL_Date.mdf,初始大小为10MB,以后按5%自动增长,大小不限;
3、“事务日志”名为KCGL_log.ldf,初始大小为5MB,以后按5%自动增长,最大不超过200MB;
4、使用Management Studio创建完整备份;
5、使用Management Studio还原完整备份。
2.实验要求
创建一个数据库,并进行备份、还原操作
3.实验预备知识
数据库可以通过在Management Studio中以交互方式或利用CREATE DATABASE语句类似创建。SQL Server的数据库有3种类型的文件来组织与存储数据:主文件、次要文件、事务日志文件。
实验内容
1、使用Management Studio中以交互方式创建数据库KCGL;
1.实验结果
完成数据库KCGL的创建、完整备份和完整还原。
2.疑难与需解决的问题
对CREATE DATABASE命令的掌握比较困难
3.实验体会
虽然对于数据库的基本操作有所掌握,但是觉得数据库依旧很复杂,需要深入学习。
教师评语及成绩

SQL数据库实验报告2

SQL数据库实验报告2

南京理工大学紫金学院实验报告书课程名称:《数据库系统》实验题目:实验2用SQL语句创建数据库和表班级: 0906012 学号: 090601257姓名:朱书宏指导教师:叶庆生一、实验目的1.更熟悉SQL语句对数据库的查询命令2. 对数据库的实际运用有一定的认识3.熟悉SQL的操作界面二、实验内容1.根据下列数据库模式Product(marker, model, type)PC(model, speed, ram, hd, rd, price)Laptop(model, speed, ram ,hd, screen, price)Printer(model, color, type, price)用SQL语句写出后面的查询,并使用习题1提供的资料写出查询结果。

* a) 找出所有价格在$1200以下的PC机的型号、速度和硬盘大小。

* b) 要求同(a),但是重命名列speed为megahertz以及列hd为gigabytes。

c) 找出所有打印机制造厂商。

d) 找出价格在$2000以上的手提电脑的型号、内存大小和屏幕尺寸。

* e) 找出关系Printer中所有彩色打印机元组,注意属性color是一个布尔类型。

f) 找出价格少于$2000并拥有12X或16X DVD的PC机的型号、速度和硬盘尺寸。

把rd属性看作一个字符串属性。

* g) 查询硬盘容量至少在30G的手提电脑制造商及电脑的速度。

* h) 查询制造商B制造的任意类型的所有产品的型号和价格。

i) 查询只卖手提电脑不卖PC的厂商。

! j) 查询出现在两种或两种以上PC中的硬盘的尺寸。

! k) 查询每对具有相同速度和RAM的PC机,每一对只出现一次。

例如,如果(i,j)符合,则(j,i)就不能出现在结果中出现。

!!l) 查询生产至少两种速度大于等于1000的计算机(PC或手提)的厂商。

2.根据下列数据库模式Classes ( class , type , country , numCuns , bore , displacement )Ships( name , class , launched )Battles( name , date )Outcomes ( ship , battle , result )用SQL语句写出后面的查询,并使用习题2给出的数据库模式和资料写出查询结果。

《数据库实验》实验二 数据操作实验

《数据库实验》实验二 数据操作实验

院系:计算机学院实验课程:数据库实验实验项目:数据操作实验指导老师:XXX开课时间:XXXX ~ XXXX年度第 2学期专业:XXXX班级:XXXX级本X班学生:XXX学号:XXXXXXXX实验二数据操作实验一、实验任务及目的1. 实验任务:上机完成实验内容,主要是编写、运行和分析SQL,请预先自行判断SQL 的运行结果(例如:查询结果包含哪些数据;更新后关系数据如何变化),然后与实际的运行结果比较,以此发现和修正SQL编写中的错误。

2. 实验目的:能够熟练使用MS SQL Server的Query Analyzer工具,联机运行SQL并观察分析SQL的执行结果。

掌握SQL的数据定义、数据查询和数据修改功能,能独立用SQL表述问题,解决较复杂的应用需求。

二、实验的主要硬件软件环境MS SQL Server、计算机磁盘三、实验主要数据结构线性表四、实验的主要算法1.至少向北京或天津的工程提供了零件的供应商名,供应的零件名、工程名和供应数量。

SELECT PNAME,JNAME,SNAME,QTYFROM S,P,J,SPJWHERE SPJ.SNO=S.SNOAND SPJ.JNO=J.JNOAND SPJ.PNO=P.PNOAND (J.CITY=’上海’ OR J.CITY=’天津’)2.供应红色零件给工程J1的供应商名SELECT SNAMEFROM S,P,SPJWHERE SPJ.JNO=’J1’AND SPJ.SNO=S.SNOAND SPJ.PNO=P.PNOAND COLOR=’红’3. 没有使用天津产的零件的工程号SELECT JNOFROM JWHERE JNO NOT IN(SELECT JNOFROM SPJ,SWHERE SPJ.SNO=S.SNOAND CITY=’天津’)4.没有向位于相同城市的工程供应零件的供应商名SELECT SNAMEFROM SWHERE SNAME NOT IN( SELECT SNAMEFROM S,J,SPJWHERE SPJ.JNO=J.JNOAND SPJ.SNO=S.SNOAND S.CITY=J.CITY)5. 和工程J3位于同一城市且使用过至少一种相同零件的其它工程名SELECT DISTINCT(JNAME)FROM J,SPJWHERE SPJ.JNO=J.JNOAND CITY IN(SELECT CITYFROM JWHERE J.JNO=’J3’)AND JNAME NOT IN(SELECT JNAMEFROM JWHERE J.JNO=’J3’)6. 每种颜色零件的总重量SELECT COLOR,SUM(WEIGHT)FROM PGROUP BY (COLOR)7.红色零件的平均重量SELECT AVG(WEIGHT)FROM PWHERE COLOR=’红’8.供应商最集中的城市(意即,哪个城市的供应商最多?)SELECT S.CITYFROM SGROUP BY (CITY)HAVING COUNT(CITY)>=ALL(SELECT COUNT(CITY)FROM SGROUP BY (CITY))9.对上海和天津,统计该城市的供应商一共供应了多少数量的零件。

数据库运维形考任务2-实验2 MariaDB数据库对象管理

数据库运维形考任务2-实验2 MariaDB数据库对象管理

数据库运维形考任务2-实验2 MariaDB数据库对象管理本文档旨在介绍MariaDB数据库对象管理的实验2任务。

在这个任务中,我们将研究如何管理MariaDB数据库中的不同对象。

1. 创建和删除数据库1.1 创建数据库要创建一个新的数据库,在MariaDB命令行中执行以下语句:CREATE DATABASE database_name;请将`database_name`替换为您想要创建的数据库的名称。

1.2 删除数据库如果要删除一个现有的数据库,可以使用以下语句:DROP DATABASE database_name;同样,请将`database_name`替换为要删除的数据库的名称。

2. 创建和删除表2.1 创建表在已有的数据库中创建表,使用以下语句:USE database_name;CREATE TABLE table_name (column1 datatype,column2 datatype,...);请将`database_name`替换为已有的数据库的名称,`table_name`替换为要创建的表的名称,`column1, column2, ...`替换为表中的列名和相应的数据类型。

2.2 删除表要删除一个表,使用以下语句:USE database_name;DROP TABLE table_name;请将`database_name`替换为表所属的数据库的名称,`table_name`替换为要删除的表的名称。

3. 创建和删除索引3.1 创建索引要在表的列上创建索引,使用以下语句:USE database_name;CREATE INDEX index_name ON table_name (column);请将`database_name`替换为表所属的数据库的名称,`index_name`替换为要创建的索引的名称,`table_name`替换为包含索引的表的名称,`column`替换为要在其上创建索引的列。

数据库实验二

数据库实验二

实验二数据定义一、实验目的1、掌握使用SQL语句创建和删除数据库;2、掌握使用SQL语句创建和删除数据表,创建各种完整性约束,修改表的结构;3、掌握索引的创建和删除方法。

二、实验过程(一)数据库的建立使用CREATE DA TABASE语句创建名为“gongcheng”的数据库。

create database gongcheng(二)数据表的操作1.建立数据表在创建的“gongcheng”数据库中使用SQL语句建立4个关系(可参考课本P74习题5),如下:供应商表S (Sno,Sname,Status,Ctiy)零件表P(Pno,Pname,Color,Weight)工程项目表J(Jno,Jname,City)供应情况表SPJ(Sno,Pno,Jno,QTY)要求:(1)创建每个关系的主键,有外键的创建外键。

(2)S表中的Sname属性列的取值唯一(3)P表中weight属性列的取值范围在1-50之间(4)J表中的Jname取值不能为空并且是唯一的(5)SPJ表中QTY属性列的数据类型必须为int建立供应商表Screate table S(Sno varchar(8)primary key,Sname varchar(20)unique,Status int,City varchar(20))建立零件表Pcreate table P(Pno varchar(8)primary key,Pname varchar(20),Color varchar(4),Weight int check(Weight>=1 and Weight<=50))建立工程项目表Jcreate table J(Jno varchar(8)primary key,Jname varchar(20)unique not null,City varchar(20))建立供应情况表SPJcreate table SPJ(Sno varchar(8),Pno varchar(8),Jno varchar(8),QTY int,primary key(Sno,Pno,Jno),foreign key(Sno)references S(Sno),foreign key(Pno)references P(Pno),foreign key(Jno)references J(Jno))2.修改表的结构用SQL语句完成以下操作:(1)给S表增加Sphone和Semail两个属性列,分别用来存放供应商的联系电话和电子信箱。

最新数据库实验二实验报告

最新数据库实验二实验报告

最新数据库实验二实验报告实验目的:1. 熟悉数据库管理系统的基本操作。

2. 掌握数据库的创建、查询、更新和删除等基本操作。

3. 学习并实践SQL语言在数据库管理中的应用。

实验环境:- 操作系统:Windows 10- 数据库管理系统:MySQL 8.0- 开发工具:MySQL Workbench实验内容:1. 创建数据库- 使用MySQL Workbench连接到MySQL服务器。

- 执行CREATE DATABASE命令创建名为“StudentDB”的数据库。

2. 设计数据表- 在“StudentDB”数据库中创建学生表(Students)和课程表(Courses)。

- 学生表包含字段:学号(ID)、姓名(Name)、年龄(Age)、专业(Major)。

- 课程表包含字段:课程号(CourseID)、课程名(CourseName)、学分(Credits)。

3. 插入数据- 向学生表和课程表中插入一定数量的示例数据。

- 使用INSERT INTO命令并指定具体的值进行数据插入。

4. 查询操作- 实现对学生表和课程表的基本查询,如查询所有学生信息、查询特定专业学生信息等。

- 使用SELECT语句进行查询,并尝试使用WHERE子句进行条件筛选。

5. 更新和删除操作- 修改学生表中的部分数据,如更新学生的选课信息。

- 使用UPDATE命令进行数据更新。

- 删除课程表中的某些课程记录。

- 使用DELETE FROM命令进行数据删除。

6. 数据库的完整性约束- 在创建数据表时设置主键、外键等约束。

- 尝试插入违反约束的数据,并观察数据库的响应。

实验结果:- 成功创建了“StudentDB”数据库以及相应的学生表和课程表。

- 插入数据操作顺利,能够正确输入数据至指定数据表。

- 查询操作无误,能够根据不同条件检索所需数据。

- 更新和删除操作执行正确,数据表中的记录得到相应修改。

- 完整性约束有效,违反约束的操作被数据库拒绝执行。

数据库实验报告第二次

数据库实验报告第二次

数据库实验二学号:200901015 姓名:李鹏飞实验目的:认识并熟悉企业管理器,利用企业管理器创建数据库及表。

认识了解一些基本的SQL语句,并使用SQL语句建立数据库及表。

实验内容:一,企业管理器创建数据库及表1,打开企业管理器2,创建数据库右键单击数据库,在弹出对话框中选择新建数据库3,建立数据表数据库建立完成后,在新建立的数据库上单击展开节点,在子节点表上右键单击新建表,在这里,我建立一个学生基本信息表T_StuInfo,字段stuNum——学生学号stuName——学生姓名stuSex——学生性别stuDepNum——学生系别号stuMajorNum——学生所在专业号stuClassNum——学生所在班级的代号。

保存表,如图所示:二使用SQL语句创建数据库及表1,打开查询分析器由于刚打开,系统默认当前数据库为系统数据库master,在菜单栏中单击查询——更改数据库,选择已经建好的Students数据库2,在查询分析器中输入创建表语句,使用CREATE TABLE语句,新表的表名是Deparment.字段DepNum是系别的代号。

DepName是系别的名称。

语句及执行结果如图所示在查询分析器的对象浏览器中可以看到已经创建的表实验心得:本次实验初步认识了企业管理器和查询分析器,并且学会如何在企业管理器和查询分析器中建立数据库和数据表。

通过在企业管理器中简单的数据库的建立和数据表的建立,明白了在数据库管理系统中数据的组织方式。

使用SQL语句建立表这一种高效的方式执行表的创建工作,明白了现在的计算机程序中,前台代码是如何进行的数据库操作。

并且大致认识了SQL语句,对SQL语句有了初步的概念了解。

在以后的学习中,我会认真学习SQL语句,努力掌握用SQL语句进行数据库的相关操作。

数据库实验二实验报告

数据库实验二实验报告

_数据库实验二课程实验报告实验名称:姓名班级学号实验台编号同组学生实验课表现出勤、表现得分25% 实验报告得分50%实验总分操作结果得分25%实验目的:1.掌握SELECT语句的基本语法2.掌握SELECT语句中的SELECT子句的作用及使用方法3.掌握SELECT语句中的WHERE子句的作用及使用方法4.掌握SELECT语句中的ORDER BY子句的作用及使用方法5.掌握集合函数的作用及使用方法6.掌握SELECT语句中的GROUP BY子句的作用及使用方法7.熟悉内连接、外连接、自连接和非限制连接的概念8.能够熟练使用连接查询从多个表中查询数据9.能够熟练地使用子查询得到想要的数据实验内容:一、简单查询1.查询XS表中各个同学的所有信息。

select* from XS;2.查询XS表中各个同学的姓名、专业名和总学分。

select姓名,专业,总学分from XS;3.查询XS表中所有同学的学号、姓名和总学分,结果中各列的标题分别指定为num,name和mark。

select学号num,姓名name,总学分mark from XS;4.查询XS表中的学生数据来自哪些专业(使用DISTINCT子句消除结果集中的重复行)。

select distinct专业from XS;5.查询XS表中各个同学的姓名、专业名和总学分,只返回结果集的前5行。

select top 5 姓名,专业,总学分from XS;6.查询XS表中每个学生的学号、姓名和年龄信息。

select datediff(yyyy,出生日期,'2010')年龄from XS;7.查询XS表中专业为“计算机”的同学的情况。

select*from XS where专业='计算机';8.查询XS表中1979年出生的学生姓名和专业情况。

SELECT姓名,专业from XS where year(出生日期)='1979';9.查询XS表中专业名为“计算机”或“电子”或“数学”的学生的情况。

数据库实验二

数据库实验二

数据库实验⼆使⽤商⽤数据库 SQL Server 或 MySQL 实现教务系统的数据库设计实验要求:1. 学习使⽤商⽤数据库SQL Server 或MySQL2. 基于实验⼀的概念模型和逻辑结构,实现数据库分析设计3. 理解和掌握关系数据库存取技术,关系数据操作,完整性约束机制实验内容:1. 创建教务系统各数据库表,包括:Student, Course, SC等。

设置主键和外键,以及⽤户定义的完整性约束条件。

2. 输⼊数据,体验实体完整性,参照完整性,以及⽤户定义的完整性约束。

3. 简单的数据浏览,数据增删改。

实验过程:1. 安装 SQL Server 20162. 安装Microsoft SQL Server Management Studio (SSMS)3. 创建数据库和表选择数据库,右键新建查询,输⼊下⾯语句:CREATE TABLE Department --系表(Dno CHAR(20)PRIMARY KEY,Dname CHAR(20)UNIQUE,Dean CHAR(10),Classnum INT,Crnum INT,Adderss CHAR(20));CREATE TABLE Classroom --教研室表(Crno CHAR(20)PRIMARY KEY,Crname CHAR(10)UNIQUE,Dno CHAR(20),Adderss CHAR(20),FOREIGN KEY (Dno)REFERENCES Department(Dno) );CREATE TABLE Class --班级表(Classno CHAR(20)PRIMARY KEY,Classname CHAR(10)UNIQUE,Dno CHAR(20),Stunum INT,FOREIGN KEY (Dno)REFERENCES Department(Dno) );CREATE TABLE Teacher --教员表(Tno CHAR(10)PRIMARY KEY,Tname CHAR(10)UNIQUE,Title CHAR(10),TSex CHAR(4),Crno CHAR(20),FOREIGN KEY (Crno)REFERENCES Classroom(Crno) );CREATE TABLE Student --学⽣表(Sno CHAR(10)PRIMARY KEY,Sname CHAR(10)UNIQUE,Ssex CHAR(4),Classno CHAR(20),Tno CHAR(10),FOREIGN KEY (Classno)REFERENCES Class(Classno), FOREIGN KEY (Tno)REFERENCES Teacher(Tno));CREATE TABLE Course --课程表(Cno CHAR(10)PRIMARY KEY,Cname CHAR(20)UNIQUE,Credit INT,Chour INT);CREATE TABLE SC --选修表��(Sno CHAR(10),Cno CHAR(10),Mark INT,PRIMARY KEY(Sno,Cno),FOREIGN KEY (Sno)REFERENCES Student(Sno), FOREIGN KEY (Cno)REFERENCES Course(Cno) );4. 直接使⽤SSMS编辑各表数据选中某⼀表,右键选择编辑前200⾏系表:班级表:教研室表:学⽣表:选修表:课程表:5. 导出数据库数据字典选择数据库,右键新建查询,语句如下:SELECT(case when a.colorder=1 then else '' end)表名,a. colorder 字段序号, 字段名,(case when COLUMNPROPERTY( a.id,,'IsIdentity')=1 then '√'else '' end) 标识, (case when (SELECT count(*)FROM sysobjectsWHERE (name in(SELECT nameFROM sysindexesWHERE (id = a.id) AND (indid in(SELECT indidFROM sysindexkeysWHERE (id = a.id) AND (colid in(SELECT colidFROM syscolumnsWHERE (id = a.id) AND (name = ))))))) AND(xtype = 'PK'))>0 then '√' else '' end) 主键, 类型,a.length 占⽤字节数,COLUMNPROPERTY(a.id,,'PRECISION') as 长度,isnull(COLUMNPROPERTY(a.id,,'Scale'),0) as ⼩数位数,(case when a.isnullable=1 then '√'else '' end) 允许空,isnull(e.text,'') 默认值,isnull(g.[value],'') AS 字段说明FROM syscolumns a left join systypes bon a.xtype=b.xusertypeinner join sysobjects don a.id=d.id and d.xtype='U' and <>'dtproperties' left join syscomments eon a.cdefault=e.idleft join sys.extended_properties gon a.id=g.major_id AND a.colid = g.major_idorder by a.id,a.colorder得到结果:数据关系图如图所⽰:6. SQL语句编辑数据:添加:INSERT INTO Department values ('D4','张建','海技系','14','12','松岭路')新增了⼀条记录:删除:DELETE FROM SC WHERE Sno ='S1'此处记录(‘S1’,’C1’,’79’)被删除修改:UPDATE Student set Ssex ='男'WHERE Sno ='S1'Sno为S1的记录性别修改为了‘男’⼼得总结:刚开始在使⽤SSMS编辑数据的时候,总忘记各表中的关系,学⽣表还没定义就编辑选修表,报了不少次错;由此看来,整体设计很重要,像编程之前的流程图⼀样,在建⽴各表之前也应该事先理清楚这些表之间的关系,这样数据库的思路更清晰。

实验2复杂查询

实验2复杂查询
(4)显示雇员scott的管理者名
(5)查询emp表和salgrade表显示部门20的雇员名,工资及其工E同部门的所有雇员,但不显示BLAKE.
(2)显示超过平均工资的所有雇员名,工资及其部门号
(3)显示超过该部门平均工资的所有该部门雇员名,工资及部门号。
(4)显示高于CLERK岗位所有雇员工资的所有雇员名,工资及岗位
2.select ename,comm,dname from emp e,dept d where e.deptno=d.deptno and comm is not null;
3.select ename,sal,dname from emp e,dept d where d.deptno=e.deptno and loc='LALLAS';
【实验步骤和方法】
1、启动oracle的相关服务。
2、启动SQL*plus工具,用scott普通用户登录oracle。
3、完成实验内容。
【实验预习要求】
重点复习oracle的多表查询,子查询和外连接。
【实验报告要求】
除按实验报告纸的内容进行填写外,主体部分包括以下内容:
(1)程序中用到哪些命令
(2)实验步骤
2.实验步骤
3.实验运行结果及结果分析
4.上机调试中遇到的主要问题及解决办法
倒数第二个显示超过该部门平均工资的所有该部门雇员名,工资及部门号。
查看课本P102例子和p130
还有一种解决方法
select ename,sal,emp.deptno from emp,(select avg(sal) a,deptno from emp group by deptno) t where emp.deptno=t.deptno and emp.sal>t.a;

数据库实验二,sql查询语句

数据库实验二,sql查询语句

实验二:数据查询语言实验内容SQL数据查询语句:例5-1:(选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。

select sno,sname,sex,sage from student;例5-2:(不选择重复行) 求选修了课程的学生学号。

select distinct cno from sc where cno is not null;例5-3:(选择表中的所有列) 求全体学生的详细信息。

select * from student;例5-4:(使用表达式) 求全体学生的学号、姓名和出生年份。

select sno,sname,birthday from student;例5-5:(使用列的别名) 求学生的学号和出生年份,显示时使用别名“学号”和“出生年份”。

select sno as"学号",birthday as"出生年份" from student;例5-6:(比较大小条件) 求年龄大于19岁的学生的姓名和年龄。

select sname,age from studentwhere age>19;例5-7:(比较大小条件) 求计算机系或经济管理系年龄大于18岁的学生的姓名、系和年龄。

select sname,depname ,agefrom student,departmentwhere student.depno=department.depnoand age>18;例5-8:(确定范围条件) 求年龄在19岁与22岁(含20岁和22岁)之间的学生的学号和年龄。

select sno,age from studentwhere age in(19,22);例5-9:(确定范围条件) 求年龄不在19岁与22岁之间的学生的学号和年龄。

select sno,age from studentwhere age not in(19,22);例5-10:(确定集合条件) 求在下列各系的学生信息:数学系、计算机系。

数据库实验报告实验二参考答案[最终版]

数据库实验报告实验二参考答案[最终版]

数据库实验报告实验二参考答案[最终版]第一篇:数据库实验报告实验二参考答案[最终版]1.你的老板要求你创建一个数据量为20G的数据库,但是你现在的硬盘上没有一个这么大空闲容量的分区,只有3个空闲容量为8G的分区,请问,你该如何完成这个任务?答:为该数据库创建3个数据文件,每个数据文件只需保存小于8G的数据,将这3个数据文件分别存储在不同的硬盘分区即可。

注:数据库中的数据都保存在该数据库的若干数据文件中,而非日志文件!2.你想创建一个初始大小为2MB的数据库,但是你却发现你创建的数据库的初始大小是5MB,而且不能小于这个值,请问是什么原因?答:系统数据库中的model数据库为用户创建数据库提供模板,也就是说,在创建数据库时,数据库引擎首先通过复制 Model 数据库中的内容来创建数据库的第一部分,然后再用空页填充新数据库的剩余部分。

因此,用户创建的数据库的初始大小不能小于model数据库的大小。

该问题的原因在于model数据库数据文件的初始大小被设定为5MB。

/***************************SQL语言部分*****************************/ /*创建数据库student*/create database studenton(name=student_data,filename='C:DATAstudent_data.mdf', size=3,maxsize=unlimited,filegrowth=1)log on(name=student_log,filename='C:DATAstudent_log.ldf',size =1,maxsize=20,filegrowth=10%)/*修改数据库student--添加数据文件*/alter database student add filegroup studata /*先增加一个文件组studata*/ goalter database studentadd file(Name=student_data1,filename='D:DATAstudent_data1.nd f',Size=50,Maxsize=500,Filegrowth=30%)to filegroup studata /*删除数据库student */ drop database student第二篇:SQL数据库实验报告实验二实验2SQL Server数据库的管理1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。

数据库课程实验报告

数据库课程实验报告

数据库课程实验报告《数据库课程实验报告》在数据库课程的学习中,学生们经常会进行一些实验来加深对数据库知识的理解和掌握。

这些实验旨在让学生通过实际操作,掌握数据库的设计、实现和管理技能,同时培养学生的数据分析和处理能力。

在本文中,我们将分享一些数据库课程实验的报告,以及实验过程中的一些收获和体会。

实验一:数据库设计与实现在这个实验中,我们学习了数据库的设计原理和实现方法。

通过对一个实际的案例进行数据库设计,我们了解了实体关系模型(ERM)的建模方法,以及如何将实体关系模型转化为关系模式。

在实现阶段,我们学习了SQL语言的基本操作,包括创建表、插入数据、查询数据等。

通过这个实验,我们深刻理解了数据库设计的重要性,以及如何通过SQL语言对数据库进行操作。

实验二:数据库管理与优化在这个实验中,我们学习了数据库的管理和优化技术。

我们了解了数据库的备份和恢复方法,以及如何进行性能优化和索引优化。

通过实验操作,我们学会了如何监控数据库的性能,并对数据库进行优化。

这个实验让我们认识到了数据库管理的重要性,以及如何通过合理的管理和优化手段提高数据库的性能和稳定性。

实验三:数据分析与报表生成在这个实验中,我们学习了如何通过数据库进行数据分析和报表生成。

我们掌握了数据分析的基本方法和技巧,以及如何通过SQL语言进行数据挖掘和统计分析。

通过实验操作,我们学会了如何利用数据库工具生成各种报表,并对数据进行可视化分析。

这个实验让我们认识到了数据库在数据分析和业务决策中的重要作用,以及如何通过数据库技术提高数据分析的效率和准确性。

通过这些实验,我们不仅加深了对数据库知识的理解和掌握,还培养了数据分析和处理能力。

我们相信,在今后的学习和工作中,这些知识和技能都将对我们有很大的帮助。

数据库课程实验不仅是理论知识的巩固和实践的机会,更是对我们未来发展的有益补充和支持。

希望我们能够在未来的学习和工作中,不断提升自己的数据库技能,为自己的发展打下坚实的基础。

数据库原理实验报告(2)实验二 数据库的创建、管理、备份及还原实验

数据库原理实验报告(2)实验二 数据库的创建、管理、备份及还原实验

南京晓庄学院《数据库原理与应用》课程实验报告实验二数据库的创建、管理、备份及还原实验所在院(系):数学与信息技术学院班级:学号:姓名:1.实验目的(1)掌握分别使用SQL Server Management Studio图形界面和Transact-SQL语句创建和修改数据库的基本方法;(2)学习使用SQL Server查询分析窗口接收Transact-SQL语句和进行结果分析。

(3)了解SQL Server的数据库备份和恢复机制,掌握SQL Server中数据库备份与还原的方法。

2.实验要求(1)使用SQL Server Management Studio创建“教学管理”数据库。

(2)使用SQL Server Management Studio修改和删除“教学管理”数据库。

(3)使用Transact-SQL语句创建“教学管理”数据库。

(4)使用Transact-SQL语句修改和删除“教学管理”数据库。

(5)使用SQL Server Management Studio创建“备份设备”;使用SQL Server ManagementStudio对数据库“教学管理”进行备份和还原。

(6)SQL Server 2005数据库文件的分离与附加。

(7)按要求完成实验报告3.实验步骤、结果和总结实验步骤/结果(1) 总结使用SQL Server Management Studio创建、修改和册除“TM”(教学管理)数据库的过程。

(2) 总结在实验中为创建、修改和删除“教学管理”数据库所编写的各条T-SQL语句及其完成了什么功能。

(3)总结使用SQL Server Management Studio备份与还原数据库的几种方法。

4.实验思考:①SQL Server 2005物理数据库包含了哪能几种类型的文件以及它们的作用?②数据库备份与转储包含那些原理?③如果数据或日志文件非空不能删除,查找SQL Server中缩小文件大小的方法。

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

南京信息工程大学数据库基础教程实验(实习)报告
实验(实习)名称数据库、表的创建实验(实习)日期2016.4 得分指导老师马瑞
系计算机与软件学院专业网络工程班级 2 姓名杨泽瑞学号20141346046
一、实验目的
1.了解在SSMS创建数据库的要求。

2.了解Server数据库的逻辑结构和物理结构。

3.掌握表的结构特点。

4.掌握SQL的基本数据类型。

5.掌握空值概念。

6.掌握SSMS界面和使用T-SQL语句创建数据库的方法。

二、实验内容
1.在SSMS中创建数据库的要求如下:
(1)能创建数据库的用户必须是系统管理员,或被授权使用CREATE DATABASE 语句的用户。

(2)创建数据库必须确定数据库名、所有者(即创建数据库的用户)、数据库大小(最初大小、增长方式)和存储数据库的文件。

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

2.定义数据库结构。

创建学生成绩数据库,数据库名为XSCJ,包含下列3个表。

(1)学生表:表名为Student,描述学生信息。

(2)课程表:表名为Course,描述课程信息。

(3)学生选课表:表名为StuCourse,描述学生选课及成绩信息。

3.在SSMS控制台上创建XSCJ数据库。

要求:数据库XSCJ初始大小为5 MB,日志文件初始大小为1 MB,增长方式均采用默认值。

数据库的逻辑文件名和物理文件名均采用默认值,分别为XSCJ_data 和f:\prograni FilesVMicrosoft SQL Server\MSSQL.l\MSSQL\data\XSCJ.mdf ,其中 f:\Program Files\Microsoft SQL Server\MSSQL.l\MSSQL\data^ SQL Server 2012的系统安装目录;事务日志的的逻辑文件名和物理文件名也均采用默认值,分别为XSCJ_LOG和
ProgramFiles\MicrosoftSpLServer\MSSQL.l\MSSQL\data\XSCJ_Log.ldf。

注意:不同的安装系统安装目录有可能不相同。

启动SSMS,以系统管理员或被授权使用CREATE DATABASE语句的用户登录SQL Server 2014服务器。

在对象资源管理器中“数据库,,图标上单击鼠标右键,在快捷菜单上选择“新建数 ,据库”,将出现如图A2.1所不的“新建数据库”窗口。

在“数据库名称”文本框中输入数据库名 1SCJ”,并将逻辑文件的初始大小改为5 MB,单击“确定”按钮,即可创建XSCJ数据库。

在对象资源管理器中展开“数据库”图标,将看到新增了“XSCJ”图标。

4.将新创建的XSCJ数据库删除。

在资源管理器中选择数据库XSCJ在XSCJ上单击鼠标右键删除。

5.使用T-SQL语句创建XSCJ数据库。

启动査询分析器,在查询分析器中输入以下语句:
6.在SSMS控制台上创建XSCJ数据库的SANGE 表。

选择数据库XSCJ—展开XSCJ 数据库—
在“表”图标上单击右键新建表。

7.在SSMS控制台上删除XSCJ数据库的3个表。

在对象资源管理器中选择数据库XSCJ的表Student—>在Student上点击鼠标右键一>删除,即删除了表Student。

按同样的操作过程删除Course和StuCourse。

8.使用T-SQL语旬创建XSCJ数据库的3个表。

启动查询分析器在查询分拆器窗口中输入以下语句:
执行上述语句,并在对象资源管理器中查看执行结果。

相关文档
最新文档