数据库第一次上机实验报告

合集下载

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告摘要:本次数据库上机实验主要介绍了SQL语言在数据库中的应用,通过实际操作掌握了SQL语言的基本语法和常用命令,同时实践了数据库的建立、数据表的创建、数据插入、修改、删除、以及查询等操作。

本文将详细介绍实验中所使用的数据结构和算法,以及实验数据和结果的分析与总结。

一、实验目的本次实验的目的是对数据库相关的运用做一次实践操作,包括了数据库的建立、数据表的创建、数据插入、修改、删除、以及查询等操作。

力求将理论知识与实践经验相结合,为今后的数据库实践奠定基础。

二、实验原理本次实验中主要使用的是SQL语言对数据库进行管理。

SQL是一种结构化查询语言,可以对数据库进行查询、操作、管理等。

通过SQL语言对数据库中的数据进行增、删、改、查等操作,可以实现对数据的有效管理。

三、实验步骤1. 建立数据库首先在本地电脑建立数据库,可以通过使用全局管理工具进行实现。

2. 创建数据表在数据库中创建数据表,可以用CREATE TABLE命令来实现。

首先需要指定表的名称,其次需要指定表的字段名及其数据类型。

3. 插入数据表创建好之后,可以向表中插入数据。

可以使用INSERT命令将数据插入到表中,INSERT后面接表名和插入的数据。

4. 数据查询对于已经插入到数据库中的数据,可以进行查询操作。

可以通过SELECT语句对数据库进行查询。

SELECT后面需要指定要查询的字段名或者使用星号表示要查询全部字段。

5. 数据修改在数据库中,数据的修改一般是使用UPDATE命令来实现。

通过UPDATE语句可以修改已经存在的数据信息。

6. 数据删除表中的某个项不再需要时,可以通过DELETE语句来删除数据库中的数据项。

DELETE命令后面跟上要删除的数据。

四、实验结果通过SQL的基本命令,我们在本地电脑中成功的建立起了一个数据库,并把相关的数据插入到该数据库中。

在查询过程中,SQL可以只按照需要查询的数据来进行操作,使得数据的处理过程更加高效。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告数据库上机实验报告引言:数据库是现代信息技术中非常重要的一个组成部分,它可以帮助我们有效地存储、管理和检索大量的数据。

本次上机实验旨在通过实际操作,加深对数据库的理解,并掌握一些基本的数据库操作技巧。

实验环境:本次实验使用的是MySQL数据库管理系统,通过MySQL Workbench进行操作。

数据库中包含了一个学生信息表,其中包括学生的学号、姓名、性别、年龄等信息。

实验内容:1. 创建数据库首先,我们需要创建一个数据库来存储学生信息。

通过在MySQL Workbench中执行CREATE DATABASE语句,我们成功创建了一个名为"student"的数据库。

2. 创建数据表接下来,我们需要在数据库中创建一个数据表来存储学生信息。

通过执行CREATE TABLE语句,我们定义了一个名为"student_info"的数据表,并指定了各个字段的名称和数据类型。

例如,学号字段的数据类型为INT,姓名字段的数据类型为VARCHAR(20)等。

3. 插入数据在数据表创建完成后,我们需要向其中插入一些数据。

通过执行INSERT INTO语句,我们成功插入了几条学生信息记录。

例如,学号为1001的学生姓名为张三,性别为男,年龄为20岁。

4. 查询数据数据库的一个重要功能就是能够快速检索和查询数据。

通过执行SELECT语句,我们可以根据特定的条件来查询数据。

例如,我们可以查询所有性别为女的学生信息,或者查询年龄在18岁以上的学生信息。

5. 更新数据有时候,我们需要修改已有的数据。

通过执行UPDATE语句,我们可以更新数据表中的记录。

例如,我们可以将学号为1001的学生姓名由张三修改为李四。

6. 删除数据如果某条数据不再需要,我们可以通过执行DELETE语句将其从数据表中删除。

例如,我们可以删除学号为1001的学生信息记录。

实验总结:通过本次实验,我对数据库的基本概念和操作有了更深入的理解。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告数据库上机实验报告试验内容1、数据表的建立基本表《简单的》带有主键带有外码约束的(外码来自其他表或者本表)2、数据表的修改添加删除列修改列属性类型添加删除约束(约束名)元组的添加,修改,删除删除数据表试验过程1、create table student(sno char(9) primary key , /*sn o是主码列级完整性约束条件*/sname char(20) unique, /*sname 取唯一值*/ssex char(2),sage smallint, /*类型为smallint*/sdept char(20)/*所在系*/);create table course(cno char(4) primary key, /*列级完整性约束条件,cno是主码*/cname char(40),cpno char(4),/*cpno的含义是先行课*/ccredit smallint,foreign key (cpno) references course(cno)/*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/);create table sc(sno char(9),cno char(4),grade smallint,primary key (sno,cno),/*主码有两个属性构成,必须作为表级完整性进行定义*/foreign key (sno) references student(sno),/*表级完整性约束条件,sno是外码,被参照表是student*/foreign key (cno) references course(cno),/*表级完整性约束条件,cno是外码,被参照表示course*/);例1、create table s(cno varchar(3), /*变长的字符串,输入2个字符就是两个字符不会补空格*/sname varchar(20),status int,city varchar(20),constraint pk_sno primary key(sno), /*约束条件的名字为pk_sno*/);create table p(pno varchar(3),pname varchar(20),color varchar(3),weight int,constraint pk_pno primary key (pno), /*约束条件的名字是pk_pno*/);create table j(jno varchar(3),jname varchar(20),city varchar(20),constraint pk_jno primary key(jno) /*约束条件的名字为pk_jno*/);例2、create table spj(sno varchar(3), /*第一个表中的主码*/pno varchar(3),jno varchar(3),qty int, /*数量*/constraint pk_spj primary key(sno,pno,jno), /*主码由3个属性组成*/foreign key(sno) references s(sno),/*表级完整性约束条件,sno是外码,被参照表是s*/foreign key(pno) references p(pno),/*表级完整性约束条件,pno是外码,被参照表是p*/foreign key(jno) references j(jno),/*表级完整性约束条件,jno是外码,被参照表是j*/);2、数据表的更改在s表中添加一个concat 列alter table s add concat varchar(20)在s表中删除concat 列alter table s drop column concat更改s表concat列的属性把长度由20改为30alter table s alter column concat varchar(30)联系方式名字为concat 修改属性为唯一的属性名为con_concatalter table s add constraint con_concat uniqu e(concat)删除约束关系con_concatalter table s drop constraint con_concat/*插入一个元组*/insert into s valus(‘s1’,’精益’,20,’天津’) /*20不能写成’20’*/试验中的问题的排除与总结:1、在创建spj时有三个实体所以从3个实体中取主码,还有一个数量属性也要写上主码由那3个主码确定2、更改一个数据库中数据表时一定要先使该数据库处于正在使用状态3、constraint是可选关键字,表示primary key、not null、unique、foreign key 或check 约束定义的开始。

数据库上机实验报告

数据库上机实验报告

数据库上机报告(一)上机实验项目名称:库以及表的基本操作学号:项目学时:姓名:班级:目录一、实验目的二、实验内容三、设计步骤以及实验结果四、实验总结一、实验目的(1)熟悉SQL Sever数据库组成(2)了解如何创建、导入以及删除数据库(3)熟悉表的创建与管理二、实验内容:(1)数据库由包含数据的基本表和其他对象(视图、索引、存储过程和触发器)组成。

系统数据库包括master数据库(记录所有其他的数据库以及相关信息)tempdb数据库(保存所有的临时表和临时存储过程)msdb数据库。

(2)建立所需要的数据库(3)建立学生表课程表以及选课表三、设计步骤以及实验结果(3.2.1)新建数据库操作:打开SQL Sever软件点开资源管理器下数据库标志左侧的加号,在下拉菜单中右键点击,(见右上图)之后点击新建数据库之后在弹出的对话框中数据库名称一栏输入你所要的数据库名称;单击确定,建立数据库完成。

(3.2.2)导入数据库一种方法是将数据库的两个源文件放在数据库存放源文件的文件夹里,之后在数据库上右击点击附加,在弹出的窗口选择添加,会弹出另一个窗口选择你要附加的数据库的源文件将其导入进来。

第二种方法是新建一个数据库,名字最好与你即将要导入进来的数据库名称一致,在所建立好的数据库上单击右键选择任务--还原--数据库,选择设备选项,接着将要导入的源文件都添加进来点击确定(3.2.3)删除数据库首先需要在你所要删除的数据库上单击右键选择任务--分离,之后要在存放数据库源文件的根目录下将有关其数据库的内容删除掉(根目录具体位置见上图)。

(3.3)创建学生表,课程表以及选课表并且对其进行适当的约束(3.3.1)创建学生表展开已经创建好的数据库student,在【表】上单击右键,选择【新建表】在前5列设计写入列名为Sno,Sname,Ssex,Sage,Sdept数据类型分别为nchar(10) ,varchar(50) ,nchar(2),int,nchar(10),其中后四项可以为null值,且将学生号Sno设为主键。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告引言:数据库是一种用于存储和管理数据的工具,它在现代社会中的重要性无可忽视。

本次实验旨在通过实际上机操作,加深对数据库的理解,并熟悉其相关操作和功能。

一、实验背景在信息时代的大背景下,各种类型的数据呈现指数级增长。

为了有效地存储和管理这些数据,数据库被广泛采用。

数据库管理系统(DBMS)是一套软件工具,用于定义、创建、管理和检索数据库。

本次实验将使用一款流行的开源DBMS工具MySQL。

二、实验目的1. 了解数据库的基本概念和原理;2. 掌握数据库的基本操作;3. 理解并应用SQL语言;4. 通过实际操作,熟悉数据库的增删改查功能。

三、实验过程1. 数据库的创建与连接首先,在MySQL中创建一个新的数据库,并通过合适的用户名和密码连接到该数据库。

数据库连接作为与数据库通信的接口,是进行各种操作的基础。

2. 数据表的创建与设置创建数据表是数据库设计的核心部分。

在实验过程中,我们选择创建一个学生信息表格。

通过指定各个字段的数据类型、长度以及约束,定义了学生信息表的结构。

3. 数据的插入与查询在学生信息表中插入若干条测试数据,包括学生姓名、年龄、性别、学号等信息。

通过SQL语句,我们可以灵活地插入、查询和过滤数据。

例如,查询年龄大于20岁的学生或者查询特定学号的学生等。

4. 数据的更新与删除数据库的更新和删除操作是不可或缺的。

我们可以通过SQL语句,修改特定记录的字段值,或者删除某些记录,以实现数据的动态维护和管理。

四、实验结果与分析通过实验操作,我们成功创建了学生信息表格,并插入了若干测试数据。

在查询功能上,我们能够根据不同的条件,按照要求查询指定的学生信息。

此外,我们还尝试了数据的更新和删除操作,成功地修改了一部分学生的年龄和性别,并删除了一些无效的记录。

五、实验总结通过本次数据库上机实验,我对数据库的基本概念、原理和操作有了更深入的了解。

在实践中,我能熟练地使用创建数据库、创建数据表、插入数据、查询数据以及修改和删除数据等功能。

数据库上机实验报告+总结

数据库上机实验报告+总结

Access数据库上机实验报告陶瓷公司管理信息系统项目1 实验目的1.了解信息系统开发的主要过程,体会在系统开发中系统实施的主要步骤。

2.掌握使用Access的表、查询、窗体、报表等工具开发一个小型信息系统的主要方法。

3.通过此系统开发实践,理解数据库的基础知识,软件开发工具的知识以及管理信息系统得知识,了解如何将它们融会贯通。

同时通过实践培养学生综合运用知识和开发应用系统的能力。

2 实验内容1、以“陶瓷公司管理信息系统”的名称创建数据库。

2、根据给定的字段信息,创建散件表、套件表、陶瓷组成表、制造商表。

3、录入数据根据给定的excel文件,利用导入功能将数据导入到相应的表中。

4、建立查询先建立散件表与制造商表的中相同字段“制造商编号”对应关系。

通过向导完成制造商散件库存量查询。

5、开发报表使用报表向导设计报表,通过添加散件成本、散件出售价格、散件编号、散件名称、库存、制造商名称完成字段分组。

6、窗体设计通过窗体设计向导,绘制界面,并定义功能键的操作功能。

添加文本框,并定义数据源,完成表的数据关联,定义好查询、添加等按钮的功能。

3 实验结果实验总结在短暂的学习中设计视图,Aceess简单查询向导,交叉表查询向导,引入数据等操作。

学习数据库的过程中感觉跟学习其他课程一样,也有丰富的知识。

查询的创建共有五种创建查询的方法,习惯采用的是设计查询和向导的查询。

设置查询方面的知识:添加表/查询,更改表或查询间的关系,删除表/查询。

设置查询结果的排序,设置字段的显示属性等等。

感谢这次教学实验,使我对数据库有了更深的了解,希望在以后的学习中,数据库的运用可以对我有更大的帮助。

数据库上机实验报告范文1-2_sql上机实验报告范文

数据库上机实验报告范文1-2_sql上机实验报告范文

数据库上机实验报告范文1-2_sql上机实验报告范文数据库上机实验报告1-2学号:姓名:日期:20年月日实验目的:(1)编写修改数据库表的SQL语句(2)[选做]编写修改数据库完整性约束的SQL语句(3)删除数据库中数据及表的语句(2)修改department表,将chool的类型改为varchar(30)方法:例如altertabletetaddGPAnumeric(3,2),GPBnumeric(3,2);altertableintruc toraltercolumndept_namevarchar(50)要求:完成后,在下方提供SQL语句2(1)创建如下表chool(chool_namevarchar(30)notnull,budgetnumeric(18,2),deanvarch ar(50))(2)删除列budget方法:例如altertabletudentdropcolumnGPA,GPB要求:完成后,在下方提供SQL语句3(1)[选做]为chool表增加主键约束:chool_name(2)[选做]为chool表增加外键约束:deanreferenceintructor.ID方法:例如altertabletudentaltercolumnidchar(5)notnull;altertabletudentaddp rimarykey(id),foreignkey(dept_name)referencedepartment;或者例如:altertabletudentaddcontraintpk_tudentprimarykey(id),contraintfk_ tudent_deptforeignkey(dept_name)referencedepartment;不同之处在于,这两条语句提供了约束名(contraintname)要求:完成后,在下方提供SQL语句4(1)[选做]删除chool表的主键约束(2)[选做]删除chool表的外键约束方法:如不知道约束名,在“键”中找到并复制约束名,然后执行类似如下的语句:altertableintructor_1dropcontraintPK_intructor_1,FK__intructo__d ept要求:完成后,在下方提供SQL语句5(1)用inert语句在chool表中插入任意两条数据(2)删除chool表中的全部数据(3)删除chool表要求:完成后,在下方提供SQL语句。

数据库上机报告

数据库上机报告

数据库上机报告一、实验目的本次实验旨在让学生熟悉基本的SQL语句,了解数据库的基本概念,掌握数据库设计的基本思路和方法。

二、实验环境1.软件环境:操作系统:Windows 10数据库:MySQL编辑器:Navicat2.硬件环境:CPU:Intel Core i5内存:8GB三、实验步骤1.创建数据库和数据表使用Navicat连接MySQL数据库,在Query Editor中输入以下SQL语句创建数据库和数据表:CREATE DATABASE experiment;USE experiment;CREATE TABLE student(id INT PRIMARY KEY,name VARCHAR(20),age INT,gender VARCHAR(2),);2.插入数据在Query Editor中输入以下SQL语句插入数据:INSERT INTO student(id,name,age,gender) VALUES(1,'Tom',22,'男'),(2,'Lucy',20,'女'),(3,'Mike',25,'男'),(4,'Susan',23,'女');3.查询数据在Query Editor中输入以下SQL语句查询数据:SELECT * FROM student;4.更新数据在Query Editor中输入以下SQL语句更新数据:UPDATE student SET age=26 WHERE name='Mike';5.删除数据在Query Editor中输入以下SQL语句删除数据:DELETE FROM student WHERE name='Susan';四、实验总结通过本次实验,我掌握了SQL语句的基本使用方法,了解了数据库的基本概念,学会了使用Navicat进行数据库操作。

数据库上机实验报告

数据库上机实验报告

实验一:建立数据库及基本表一、实验目的1、了解SQL Server数据库的逻辑结构和物理结构;2、了解SQL Server的基本数据类型;3、学会在企业管理器中创建数据库和表;4、使用SQL查询分析器用CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。

二、实验内容1、创建数据库和查看数据库属性。

2、创建表。

3、查看和修改表结构。

4、熟悉企业管理器和查询分析器工具的使用方法三、实验步骤1、在企业管理器中创建数据库和数据表。

(1) 使用企业管理器建立图书管理数据库,数据库名为BM,初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

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

详细步骤:(2) 在企业管理器中查看图书管理数据库的属性,并进行修改,使之符合要求。

(3) 通过企业管理器,在建好了图书管理数据库BM中建立图书(book)、读者(reader)和借阅(borrow)3个表,其结构为:图书(书号,类别,出版社,作者,书名,定价);读者(编号,姓名,单位,性别,电话);借阅(书号,读者编号,借阅日期)。

三个表各个字段的数据类型:(4) 利用企业管理器向表中输入数据。

2、在查询分析器中创建数据库和数据表(1) 创建数据库S-C 的sql语句:create database s_c(2) 在数据库S-C下,创建基本表学生表student(sno,sname,ssex,sage,sdept)的sql语句:create table student( sno c(8),sname c(10),ssex c(2),sage(4),sdept c(8) )创建基本表课程表course(cno,cname, ccredit)的sql语句:create table course( cno c(4),cname c(10),ccredit c(2) )创建基本表成绩表sc(sno,cno,grade)的sql语句:create table sc( sno c(8),cno c(4),grade n(4) )(3) 在窗口下分别键入DROP TABLE Student及DROP TABLE SC命令,运行后观察结果。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告
本次数据库上机实验主要涉及到数据库的设计、创建和查询,通过对实验内容的学习和实践,我对数据库的相关知识有了更深入的理解和掌握。

首先,我们学习了数据库的设计原理和方法。

在数据库设计的过程中,需要考虑到数据的完整性、一致性和安全性等因素,通过对实际案例的分析和设计,我了解到了如何根据需求确定实体、属性和关系,并进行逻辑设计和物理设计。

在实验中,我使用了ER图和关系模式图等工具,对数据库的结构和关系进行了清晰的描述和设计。

其次,实验中我们学习了数据库的创建和管理。

通过使用SQL语句,我成功创建了数据库和表,并进行了数据的插入、修改和删除操作。

在实验过程中,我深入了解了SQL语句的语法和用法,掌握了如何利用SQL语句对数据库进行有效的管理和操作。

最后,我们进行了数据库的查询操作。

通过学习和实践,我掌握了SQL语句中的SELECT语句的用法,能够实现对数据库中数据的查询和统计。

在实验中,我通过编写SQL语句,成功实现了对数据库中数据的查询和分析,对于复杂的查询需求也能够进行有效的处理和实现。

通过本次数据库上机实验,我不仅加深了对数据库设计、创建和查询的理解,还提高了对SQL语句的掌握和运用能力。

我相信这些知识和技能对我的未来学习和工作都将有很大的帮助。

总的来说,本次数据库上机实验内容丰富、操作性强,通过实际操作和实践,我对数据库的相关知识有了更深入的理解和掌握。

我相信这些知识和技能对我的未来学习和工作都将有很大的帮助。

希望通过不断的学习和实践,能够进一步提高自己的数据库技能,为将来的工作做好准备。

数据库实验报告

数据库实验报告

数据库实验报告(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如工作总结、工作计划、演讲致辞、策划方案、合同协议、规章制度、条据文书、诗词鉴赏、教学资料、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays for everyone, such as work summaries, work plans, speeches, planning plans, contract agreements, rules and regulations, doctrinal documents, poetry appreciation, teaching materials, other sample essays, etc. If you want to learn about different sample formats and writing methods, please stay tuned!数据库实验报告数据库实验报告(通用3篇)数据库实验报告篇1一、实训时间:20_年5月13日至5月24日二、实训地点:三、实训目的与意义:1.这次实习可以使我们在课本上学到的知识用于实践增加了我对电脑技巧的一些认知。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告院系:专业:班级:姓名:学号:指导老师:年月日一、实验目的熟练掌握SQL语句的插入、修改、删除、查询等相关语法。

能够使用Microsoft SQL Server和MySQL软件进行相关的数据库操作。

二、实验内容1数据库的创建和使用;2表的创建和使用;3数据的插入、删除和修改;4数据的查询;5.视图的创建和使用。

实验一、创建学生成绩管理数据库在学生成绩管理数据库中,包括基本的三个关系:student,course,sc 。

(1)student(sno,sname,ssex,sage,sdept),表示学号,姓名,性别,年龄,所在系。

主键学号,姓名唯一,系默认cs。

(2)Course (cno,cname,cpno,ccredit),表示课程号,课程名,先行课程号,学分。

主键课程号(3)SC (sno,cno,grade),表示学号,课程号,成绩。

外键,学号和课程号。

创建该数据库代码及其最后结果图如下:create table student(sno char(20) primary key,sname char(10) unique,ssex char(2),sage smallint,sdept char(12) default'cs')create table course(cno char(10) primary key,cname char(20),cpno char(10),ccredit char(6))create table sc(sno char(20),cno char(10),grade smallint,primary key(sno,cno),foreign key(sno) references student(sno), foreign key(cno) references course(cno))实验二、在实验一的结果上进行各种操作练习及其代码一修改表结构,对学生表增加,电话号码一列,删除年龄一列。

数据库上机实验五篇范文

数据库上机实验五篇范文

数据库上机实验五篇范文第一篇:数据库上机实验创建数据表与数据输入Part I.使用SQL Server Management Studio创建数据表和输入数据 1.在SQL Server Management Studio中创建数据表 P69 1.(1)-(6)2.为数据表输入数据 P76 4.(1)-(4)3.数据浏览P771.(1)-(2)2.(1)-(3)Part II.使用SQL语句创建数据表和输入数据 1.使用SQL语句创建数据表 P72.例3-22.使用SQL语句输入数据 P82.例3.8习题:P.105(1)(2)insert 数据操作Insert、Update、DeleteP105 3.上机练习题(2)(4)Insert(100001, 1000, 2002-12-18 0:00:00)(100002, 2000, 2010-3-20 0:00:00)Update(100001, 1500, 2002-12-18 0:00:00)(100002, 2000, 2012-9-25 0:00:00)Delete Transact-SQL语句基础1 1.将teaching数据库中score 表的studentno列设置为引用表student的外键。

ALTER TABLE Score ADD CONSTRAINT FK_score_student FOREIGN KEY(studentno)REFERENCES student(studentno)2.将teaching数据库中class表的classname创建UNIQUE约束。

ALTER TABLE class ADD CONSTRAINT UQ_class UNIQUE(classname)执行如下插入语句,查看提示信息INSERT INTO class VALUES(‘090602’, ’计算机0902’, ’计算机学院’, ’马文斐’)3.为teaching数据库中student表的birthday列创建CHECK约束,规定学生的年龄在17-25岁之间。

数据库上机实验报告

数据库上机实验报告

数据库实验报告实验1 熟悉SQLSserver2000一.SQL安装1.运行Autorun程序,选择安装项。

2.单击安装组件,进入欢迎界面,单击下一步。

3.选择要安装的计算机,选择“创建新的SQLServer实例,单击下一步。

4.输入个人信息,同意软件许可协议,选择“服务器和客户端工具”5.安装类型选项选择经典安装,单击下一步。

6.设置服务账号对话框,需要输入一个NT网络上的账号以便登录NT网络,设定密码永久有效。

7.在身份验证模式对话框中,选择“Windows身份验证模式”。

8.安装完毕。

二.查询分析器使用1.单击开始---程序---Microsoft SQL Sever---查询分析器SQL查询分析器由文件,编辑,查询,工具,窗口和帮助6项菜单组成。

1.文件菜单中可以连接断开服务器,新建查询。

2.编辑菜单用于清除、查找、替换等编辑窗口。

3.查询窗口可以分析执行命令显示结果4.工具菜单浏览搜索对象管理统计5.窗口菜单显示切换移动窗口三.SQL企业管理器如图,在控制根目录中展开服务器,点击数据库选择新建可以新建数据库。

单击文件名,位置栏可以重命名,更改存放途径。

同理可以删除数据库创建表,删除表等。

实验2 数据定义操作实验内容:1.链接SQL服务器2.打开SQL查询分析器3.利用create database语句在SQL文件夹数据文件夹内创建数据库student4.选定数据库use database_student利用create table 语句在指定数据库中创建表,用学号sno char(10) primary key语句,设定学号为主键。

姓名sname char(20) unique, 年龄参加与计算用短整型年龄sage smallint,5.用alter table语句修改表,加入s_entrance列。

6.同理create table创建表S17.选定数据库use database_student用drop table语句删除表S8.选定数据库,用create unique index +name语句分别创建每列索引。

数据库上机实验报告

数据库上机实验报告

数据库上机实验报告实验名称:数据库上机实验报告实验目的:通过在数据库环境下进行上机实验,掌握数据库的基本操作和SQL语言的使用。

实验内容:1. 创建数据库首先创建一个数据库,可以使用MySQL、Oracle或其他数据库管理系统的命令行或可视化工具创建。

命名为“example”。

2. 创建表在“example”数据库中创建一个新表,表名为“students”。

定义表结构,包括学生的学号、姓名、性别、年龄、班级等字段。

3. 插入数据向“students”表中插入若干条学生数据,包括学号、姓名、性别、年龄、班级等信息。

4. 查询数据使用SQL语句查询“students”表中的数据,例如查询年龄小于20岁的学生、查询班级为一班的学生等。

5. 更新数据使用SQL语句更新“students”表中的数据,例如将年龄小于18岁的学生的班级改为2班。

6. 删除数据使用SQL语句删除“students”表中的数据,例如删除性别为女的学生、删除班级为三班的学生等。

7. 关闭数据库使用命令或可视化工具关闭数据库连接。

实验步骤:1. 打开MySQL命令行或可视化工具,创建名为“example”的数据库。

2. 通过CREATE TABLE语句在“example”数据库中创建名为“students”的表,并定义表结构。

3. 使用INSERT INTO语句向“students”表中插入学生数据。

4. 使用SELECT语句查询“students”表中的数据。

5. 使用UPDATE语句更新“students”表中的数据。

6. 使用DELETE语句删除“students”表中的数据。

7. 关闭MySQL连接。

实验结果:1. 创建“example”数据库成功。

2. 创建“students”表成功,包括学生的学号、姓名、性别、年龄、班级等字段。

3. 成功插入若干条学生数据。

4. 成功查询“students”表中的数据,符合查询条件的学生数据被正确显示。

数据库第一次上机报告文档

数据库第一次上机报告文档

数据库第一次上机报告姓名:学号:班级:时刻:一、实验题目:1、用DDL语句创建习题中的数据库及大体表、约束、视图等数据库对象;2、用DML语句插入、删除、修改教材中的实例数据;3、选择完成作业中的查询(很多于10个);4、选做教材例题中的建库及查询。

二、实验目标:熟练把握SQL的查询建表语句,对数据库有一个整体的了解,同时查验作业当中显现的问题,并给予解决。

三、实验进程:一、对BANK数据库的实验建表:USE masterGOCREATE DATABASE BANKON PRIMARY( NAME='bank',FILENAME='D:\database\', SIZE=4,MAXSIZE=10,FILEGROWTH=1),FILEGROUP BANK_FG1( NAME = 'bank1',FILENAME ='D:\database\', SIZE = 1MB,MAXSIZE=10,FILEGROWTH=1),( NAME = 'BANK_FG1_Dat2', FILENAME = 'D:\database\', SIZE = 1MB,MAXSIZE=10,FILEGROWTH=1)LOG ON( NAME='bankDB_log',FILENAME = 'D:\database\',SIZE=1,MAXSIZE=10,FILEGROWTH=1)GOALTER DATABASE BANKMODIFY FILEGROUP BANK_FG1 DEFAULT二、对account建表USE [Economics]GO/****** 对象: Table [dbo].[account] 脚今日期: 03/31/2020 15:51:17 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[account]([account_number] [varchar](30) NOT NULL,[branch_name] [varchar](30) NULL,[balance] [int] NULL,CONSTRAINT [PK_account] PRIMARY KEY CLUSTERED([account_number] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [dbo].[account] WITH CHECK ADD CONSTRAINT [FK_account_branch] FOREIGN KEY([branch_name])REFERENCES [dbo].[branch] ([branch_name]) GOALTER TABLE [dbo].[account] CHECK CONSTRAINT [FK_account_branch]/********************************************* *填凑数据account********************************************** */INSERT INTO account VALUES('A-101','Downtown',500);INSERT INTO account VALUES('A-102','Perryridge',400);INSERT INTO account VALUES('A-201','Brighton',900);INSERT INTO account VALUES('A-215','Mianus',700);INSERT INTO account VALUES('A-217','Brighton',750);INSERT INTO account VALUES('A-222','Redwood',700);INSERT INTO account VALUES('A-305','Round Hill',350);三、对borrower建表USE [Economics]GO/****** 对象: Table [dbo].[borrower] 脚今日期: 03/31/2020 16:10:44 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[borrower]([customer_name] [varchar](30) NULL,[loan_number] [varchar](30) NULL) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [dbo].[borrower] WITH CHECK ADD CONSTRAINT[FK_borrower_customer] FOREIGNKEY([customer_name])REFERENCES [dbo].[customer] ([customer_name])GOALTER TABLE [dbo].[borrower] CHECK CONSTRAINT [FK_borrower_customer] GOALTER TABLE [dbo].[borrower] WITH CHECK ADD CONSTRAINT [FK_borrower_loan] FOREIGN KEY([loan_number])REFERENCES [dbo].[loan] ([loan_number])GOALTER TABLE [dbo].[borrower] CHECK CONSTRAINT [FK_borrower_loan]/****************************************填凑数据borrower*****************************************/INSERT INTO borrower VALUES('Adams','L-16');INSERT INTO borrower VALUES('Curry','L-93');INSERT INTO borrower VALUES('Hayes','L-15');INSERT INTO borrower VALUES('Jackson','L-14');INSERT INTO borrower VALUES('Jones','L-17');INSERT INTO borrower VALUES('Smith','L-11');INSERT INTO borrower VALUES('Smith','L-23');INSERT INTO borrowerVALUES('Williams','L-17');四、对branch建表USE [Economics]GO/****** 对象: Table [dbo].[branch] 脚今日期: 03/31/2020 15:44:24 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[branch]([branch_name] [varchar](30) NOT NULL,[branch_city] [varchar](30) NULL,[assets] [int] NULL,CONSTRAINT [PK_branch] PRIMARY KEY CLUSTERED([branch_name] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFF/*********************************************填凑数据branch********************************************** /INSERT INTO branchVALUES('Brighton','Brooklyn',7100000);INSERT INTO branchVALUES('Downtown','Brooklyn',9000000);INSERT INTO branchVALUES('Mianus','Horseneck',400000);INSERT INTO branchVALUES('North Town','Rye',3700000);INSERT INTO branchVALUES('Perryridge','Horseneck',1700000);INSERT INTO branchVALUES('Pownal','Bennington',300000);INSERT INTO branchVALUES('Redwood','Palo Alto',2100000);INSERT INTO branchVALUES('RoundHill','Horseneck',8000000);五、对customer建表USE [Economics]GO/****** 对象: Table [dbo].[customer] 脚今日期: 03/31/2020 16:16:46 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[customer]([customer_name] [varchar](30) NOT NULL,[customer_street] [varchar](30) NULL,[customer_city] [varchar](30) NULL,CONSTRAINT [PK_customer] PRIMARY KEY CLUSTERED([customer_name] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFF/****************************************填凑数据customer*****************************************/INSERT INTO customerVALUES('Adams','Spring','Pittsfield');VALUES('Brooks','Senator','Brooklyn');INSERT INTO customerVALUES('Curry','North','Rye');INSERT INTO customerVALUES('Glenn','Sand Hill','Woodside');INSERT INTO customerVALUES('Green','Walnut','Stamford');INSERT INTO customerVALUES('Hayes','Main','Harrison');INSERT INTO customerVALUES('Johnson','Alma','Plo Alto');INSERT INTO customerVALUES('Jones','Main','Harrison');INSERT INTO customerVALUES('Lindsay','Park','Pittsfield');INSERT INTO customerVALUES('Smith','North','Rye');VALUES('Turner','Putnam','Stamford');INSERT INTO customerVALUES('Williams','Nassau','Princeton');六、对depositor建表USE [Economics]GO/****** 对象: Table [dbo].[depositor] 脚今日期: 03/31/2020 16:44:26 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[depositor]([customer_name] [varchar](30) NOT NULL,[account_number] [varchar](30) NOT NULL) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [dbo].[depositor] WITH CHECK ADD CONSTRAINT[FK_depositor_account1] FOREIGNKEY([account_number])REFERENCES [dbo].[account] ([account_number])GOALTER TABLE [dbo].[depositor] CHECK CONSTRAINT [FK_depositor_account1] GOALTER TABLE [dbo].[depositor] WITH CHECK ADD CONSTRAINT[FK_depositor_customer] FOREIGNKEY([customer_name])REFERENCES [dbo].[customer] ([customer_name])GOALTER TABLE [dbo].[depositor] CHECK CONSTRAINT [FK_depositor_customer]loan] 脚今日期: 03/31/2020 15:37:27 ******/ SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[loan]([loan_number] [varchar](30) NOT NULL,[branch_name] [varchar](30) NULL,[amount] [int] NULL,CONSTRAINT [PK_loan] PRIMARY KEY CLUSTERED([loan_number] ASC)WITH (PAD_INDEX = OFF,STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [dbo].[loan] WITH CHECK ADD CONSTRAINT [FK_loan_branch] FOREIGN KEY([branch_name])REFERENCES [dbo].[branch] ([branch_name]) GOALTER TABLE [dbo].[loan] CHECK CONSTRAINT [FK_loan_branch]/**************************************填凑数据loan**************************************/INSERT INTO loan VALUES('L-11','Round Hill',900);INSERT INTO loan VALUES('L-14','Downtown',1500);INSERT INTO loan VALUES('L-15','Perryridge',1500);INSERT INTO loan VALUES('L-16','Perryridge',1300);INSERT INTO loan VALUES('L-17','Downtown',1000);INSERT INTO loan VALUES('L-23','Redwood',2000);INSERT INTO loan VALUES('L-93','Mianus',500);七、表图建完表后的关系图:Account:Borrower:Branch:Customer:Depositor:Loan:八、查询课件上的代码和作业代码/*find all loan number for loans made at the Perryridge branch with loan amounts greaterthan $1200*/SELECT loan_number,amountFROM loanWHERE branch_name = 'Perryridge' AND amount >'1200';/*find the name ,loan number and loan amount of all customer;rename the columnname loan_number as loan_id*/SELECT customer_name, AS loan_id,amountFROM borrower,loanWHERE = ;/*find the names of all branches that have greater assets than some branch located in Brooklyn*/SELECT DISTINCT , ,,FROM branch AS B1,branch AS B2WHERE > AND = 'Brooklyn';/*find the names of all customers whose street includes the substring "Main"*/SELECT customer_name,customer_streetFROM customerWHERE customer_street LIKE'%Main%';/*list in alphabetic order the names of all customers having a loan in Perryridge branch*/ SELECT DISTINCT customer_name,, , branch_nameFROM borrower,loanWHERE = AND branch_name='Perryridge'ORDER BY customer_name;/*find all customers who have a loan,an account,or both*/(SELECT customer_name FROM depositor) UNION(SELECT customer_name FROM borrower);/*find all customers who have both a loan and an account*/(SELECT customer_name FROM depositor) INTERSECT(SELECT customer_name FROM borrower);/*find all customers who have an account but no loan*/(SELECT customer_name FROM depositor) EXCEPT(SELECT customer_name FROM borrower);/*Aggregate Functions*/SELECT avg(balance)FROM accountWHERE branch_name = 'Perryridge';SELECT count(*)FROM customer;SELECT count(DISTINCT customer_name) FROM depositor;/*the group by*/SELECT branch_name, count(DISTINCT customer_name)FROM depositor,accountWHERE =GROUP BY branch_name;/*having clause*/SELECT branch_name,avg(balance) FROM accountGROUP BY branch_nameHAVING avg(balance) > 500;/*the in clause*/SELECT DISTINCT customer_name FROM borrowerWHERE customer_name IN(SELECT customer_name FROM depositor);SELECT DISTINCT customer_name FROM borrowerWHERE customer_name NOT IN( SELECT customer_name FROM depositor);/*有错误SELECT DISTINCT customer_nameFROM borrower,loanWHERE = AND branch_name = 'Perryridge' AND(branch_name,customer_name)IN(SELECTbranch_name,customer_nameFROM depositor,accountWHERE = ;*/SELECT branch_nameFROM branchWHERE assets > some(SELECT assetsFROM branchWHERE branch_city = 'Brooklyn');SELECT branch_nameFROM branchWHERE assets > all(SELECT assetsFROM branchWHERE branch_city = 'Brooklyn');SELECT branch_nameFROM accountGROUP BY branch_nameHAVING avg(balance) >= ALL(SELECT avg(balance)FROM accountGROUP BY branch_name);/*test for empty relation*/SELECT DISTINCT customer_nameFROM depositorWHERE EXISTS(SELECT *FROM accountWHERE =AND balance >700);/*Queries*/SELECT DISTINCT balanceFROM accountEXCEPTSELECTFROM account AS A1,account AS A2 WHERE < ;/*test for absence of Duplicate Tuples*/ /*SELECT DISTINCTFROM depositor AS D1WHERE UNIQUE(SELECTFROM account AS A,depositor AS D2 WHERE =AND = AND = 'Perryridge');*/十、有疑问的题目代码/*第一个有错误的查询语句*/SELECT DISTINCT customer_nameFROM borrower,loanWHERE = AND branch_name = 'Perryridge'AND(branch_name,customer_name)IN(SELECT branch_name,customer_name FROM depositor,accountWHERE = ;/*第二个有错误的查询语句*/SELECT DISTINCTFROM depositor AS D1WHERE UNIQUE(SELECTFROM account AS A,depositor AS D2WHERE =AND = AND = 'Perryridge');总结:可能是软件不能识别UNIQUE和IN这两个关键字。

第一次上机数据库

第一次上机数据库
(2)为表student增加一个新列: birthday(出生日期),类型为datetime.
(3)将表sc中的grade列的取值范围改为小于等于150的正数.
(4)为“Sdept”字段创建一个检查约束,使得所在系必须是’CS’、’MA’或’IS’之一。
(5)为Student表的“Sname”字段增加一个唯一性约束
weightsmallintcheck(weight>0),
)
(3)创建J表
useSpjdb1
createtableJ(
jnochar(2)notnullprimarykey,
jnamechar(10)notnull,
citychar(10),
)
(4)创建SPJ表
useSpjdb1
createtableSPJ(
(5)为Student表的“Sname”字段增加一个唯一性约束
altertablestudent
addunique(sname)
6.分别建立以下索引(如果不能成功建立,请分析原因)
(1)在student表的sname列上建立普通降序索引.
createuniqueindexSTnaonstudent(snamedesc);
createclusteredindexSC_snoonsc(sno)
(4)在spj表的sno(升序), pno(升序)和jno(降序)三列上建立一个普通索引.
usespidb
createuniqueindexSPJ_demo
onspj(snoasc,pnoasc,jnodesc)
出现的问题及解决办法:
foreignkey(jno)referencesJ(jno),
)
4.修改表结构,具体要求如下
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库系统概论》第一次上机报告一、建表操作,SQL语句如下:○1USE SPJCREATE TABLE S(SNO CHAR(2) PRIMARY KEY,SNAME CHAR(6),STATUS INT,CITY CHAR CHAR(4))INSERT INTO S VALUES('S1','精益',20,'天津'); INSERT INTO S VALUES('S2','盛锡',10,'北京'); INSERT INTO S VALUES('S3','东方红',30,'北京'); INSERT INTO S VALUES('S4','丰泰盛',20,'天津'); INSERT INTO S VALUES('S5','为民',30,'上海');○2use spj;CREATE table P(PNO CHAR(2) PRIMARY KEY, PNAME CHAR(6)NOT NULL,COLOR CHAR(2) NOT NULL,WEIGHT INT NOT NULL);INSERT INTO P VALUES('P1','螺母','红',12); INSERT INTO P VALUES('P2','螺栓','绿',17); INSERT INTO P VALUES('P3','螺丝刀','蓝',14); INSERT INTO P VALUES('P4','螺丝刀','红',14); INSERT INTO P VALUES('P5','凸轮','蓝',40); INSERT INTO P VALUES('P6','齿轮','红',30); ○3use spj;create TABLE J(JNO CHAR(2) PRIMARY KEY, JNAME CHAR(8) NOT NULL,CITY CHAR(4)); INSERT INTO J VALUES('J1','三建','北京'); INSERT INTO J VALUES('J2','一汽','长春');INSERT INTO J VALUES('J3','弹簧厂','天津'); INSERT INTO J VALUES('J4','造船厂','天津'); INSERT INTO J VALUES('J5','机车厂','唐山'); INSERT INTO J VALUES('J6','无线电厂','常州'); INSERT INTO J VALUES('J7','半导体厂','南京'); ○4create TABLE SPJ(SNO CHAR(2),PNO CHAR(2),JNO CHAR(2),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)); INSERT INTO SPJ VALUES('S1','P1','J1',200); INSERT INTO SPJ VALUES('S1','P1','J3',100); INSERT INTO SPJ VALUES('S1','P1','J4',700); INSERT INTO SPJ VALUES('S1','P2','J2',100); INSERT INTO SPJ VALUES('S2','P3','J1',400); INSERT INTO SPJ VALUES('S2','P3','J2',200); INSERT INTO SPJ VALUES('S2','P3','J4',500); INSERT INTO SPJ VALUES('S2','P3','J5',400); INSERT INTO SPJ VALUES('S2','P5','J1',400); INSERT INTO SPJ VALUES('S2','P5','J2',100); INSERT INTO SPJ VALUES('S3','P1','J1',200); INSERT INTO SPJ VALUES('S3','P3','J1',200); INSERT INTO SPJ VALUES('S4','P5','J1',100); INSERT INTO SPJ VALUES('S4','P6','J3',300); INSERT INTO SPJ VALUES('S4','P6','J4',200); INSERT INTO SPJ VALUES('S5','P2','J4',100); INSERT INTO SPJ VALUES('S5','P3','J1',200); INSERT INTO SPJ VALUES('S5','P6','J2',200); INSERT INTO SPJ VALUES('S5','P6','J4',500);2.5(1)求供应工程J1零件的供应商号码SNO;SELECT distinct SNO FROM SPJ WHERE JNO='J1'(2)求供应工程J1零件P1的供应商号码SNO;SELECT DISTINCT SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'(3)求供应工程J1零件为红色的供应商号码SNO;SELECT SNO FROM SPJ,P WHERE SPJ.PNO=P.PNO AND JNO='J1' AND COLOR='红'; (4)求没有使用天津供应商生产的红色零件的工程号JNO;SELECT DISTINCT JNO FROM SPJ WHERE JNO NOT IN (SELECT SPJ.JNOFROM SPJ,S,PWHERE SPJ.SNO=S.SNO AND SPJ.PNO=P.PNOAND CITY='天津' AND COLOR='红');(5)求至少使用了供应商S1所供应的全部零件的工程号SNO;select distinct JNO from SPJ ZWHERE NOT EXISTS(SELECT * FROM SPJ X WHERE SNO='S1'AND NOT EXISTS(SELECT * FROM SPJ YWHERE Y.PNO=X.PNO AND Y.JNO=Z.JNO))3.5(1)找出所有供应商的姓名和所在城市;SELECT SNAME,CITY FROM S(2)找出所有零件的名称,颜色,重量;SELECT PNAME,COLOR,WEIGHT FROM P(4)找出使用供应商S1所供应零件的工程号码;select jno from spj where sno='s1'(5)找出上海厂商供应的所有零件号码;select distinct pno from spjwhere sno in (select sno from s where city='上海')(6)找出使用上海产的零件的工程名称;select jname from j,spj,swhere j.jno=spj.jno and spj.sno=s.sno and s.city='上海'(7)找出没有使用天津产的零件的工程号码;select jno from j where not exists(select * from spj where spj.jno=j.jno and sno in(select sno from s where city='天津'))(8)把全部红色零件的颜色改成蓝色;update p set color='蓝' where color='红'(9)由S5供给J4的零件P6改为由S3供应,请作必要的修改;update spj set sno='s3'where sno='s5'and jno='j4'and pno='p5'(10)从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录;delete from spj where sno='s2'delete from s where sno='s2'(11)请将(S2,J6,P4,200)插入供应情况关系;insert into spj values(S2,P4,J6,200);。

相关文档
最新文档