实验四 数据库表的创建和管理
数据库系统实验报告4(简单图书馆管理数据库的实现)
6
图书信息表:
2.还书后: 借阅信息表:
图书信息表:
备注: 1、表头及以下的栏目和内容,不得更改;其它栏目的位置可以适当调整,可以根据需要适当增加或减少 页。 2、本课程包含多次实验,请每次实验项目填写一份。
7
2
利用 sf_borrow,sf_return 进行借、还操作,并注意数据库中三个表的数据变化情况。 三、实验结果及分析 (一)创建数据库和数据表: 选择用企业管理器创建数据库、数据表
3
(二)数据相关操作: 1.查询:
2.删除:
4
删除后:
3.更新:
更新后:
(三)创建触发器、存储过程进行借还书操作: 1.针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 CREATE TRIGGER Insert_borrow ON dbo.借阅信息表 FOR INSERT AS begin update 图书信息表 set 状态=0 from Inserted i,图书信息表 t where t.书号=i.书号 end 2.针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。
作者 sql c++ ms java c# net
状态 1 1 1 1 1 1
借书证号 1 2 3
姓名 张三 李四 王五
住址 学三 学四 学五
并对这两个表进行删除、更新、和查询等操作 三、创建触发器、和存储过程进行借、还书操作 1) 针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 2) 针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。 3) 创建存储过程:sf_borrow,实现借书功能即:向借阅信息表进行插入操作,将书号、借书证 号,借书时间作为参数,并自动的将还书时间设置为借书时间后一个月。 4) 创建存储过程:sf_return,现实还书功能即:根据书号对借阅信息表进行删除操作,将书号 作为参数。
创建数据库和表的实验步骤
创建数据库和表的实验步骤一.实验名称:创建数据库和表二.目的和要求:(1)了解SQL Server数据库的逻辑结构和物理结构。
(2)了解表的结构特点。
(3)了解SQL Server 的基本数据类型。
(4)了解空值概念。
(5)学会使用T-SQL语句创建数据库和表.。
三.实验准备首先要明确,能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。
其次创建数据库必须要确定数据库名、所有者(即创建数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长及增长方式)和存储数据库的文件。
然后,确定数据库包含哪些表,以及所包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。
此外还要了解使用T-SQL语句创建数据库、表的方法。
四.实验内容:1、实验题目创建用于学校管理的学生-课程数据库,数据库名为“DB_自己的学号”,包含学生的信息、课程的信息以及学生选修的信息,即数据库中包含下列3个表:(l)Student:学生信息表。
(2)Course:课程信息表。
(3)Sc:选修情况表。
2.实验步骤(1)使用 T-SQL语句创建数据库按照上述要求创建学生-课程数据库。
启动查询分析器→在“查询”窗口中输人创建数据库的T-SQL语句。
单击快捷工具栏的执行图标执行上述语句,并查看执行结果(也可在企业管理器中查看)。
打开查询分析器,在工作区域输入create database DB_**********创建一个以自己学号为名的库,结果如图(1)所示:[创建数据库和表的实验步骤]。
数据库实验四
数据库实验四在学习数据库的过程中,实验是帮助我们深入理解和掌握相关知识的重要环节。
本次数据库实验四主要围绕着数据库的查询、更新以及数据完整性等方面展开。
实验的目的是让我们通过实际操作,更加熟练地运用 SQL 语句来处理数据库中的数据,同时加深对数据库原理和概念的理解。
在实验开始之前,我们首先需要准备好相关的数据库环境。
这包括安装数据库管理系统,如 MySQL 或 SQL Server 等,并创建好实验所需的数据库和数据表。
本次实验中,我们创建了一个名为“students”的数据库表,用于存储学生的基本信息,如学号、姓名、年龄、性别和所在班级等。
同时,还创建了一个名为“courses”的表,用于存储课程的信息,包括课程编号、课程名称和授课教师等。
接下来,就是实验的核心部分——数据查询操作。
通过使用 SQL 的 SELECT 语句,我们可以从数据库中获取所需的数据。
例如,要查询所有年龄大于 20 岁的学生信息,可以使用以下语句:```sqlSELECT FROM students WHERE age > 20;```除了简单的条件查询,我们还学习了如何进行多表连接查询。
比如,要获取同时选修了“数据库原理”和“操作系统”两门课程的学生信息,就需要将“students”表、“courses”表以及选课关系表进行连接查询。
数据更新操作也是实验中的重要内容。
通过使用 UPDATE 语句,我们可以对数据库中的数据进行修改。
但在进行数据更新时,一定要谨慎操作,确保更新的结果符合预期,避免造成数据的错误或丢失。
例如,如果要将某个学生的年龄增加一岁,可以使用以下语句:```sqlUPDATE students SET age = age + 1 WHERE student_id ='_____';```在实验过程中,数据完整性的维护也是至关重要的。
我们通过设置主键、外键以及各种约束条件,来确保数据的准确性和一致性。
实验4 创建和管理表
实验四创建和管理表一、实验目的1、了解数据库类型2、掌握在数据库资源管理器和查询分析器中创建数据库的方法三、实验环境windows操作系统、SQL Server 2005或2008 软件、office word三、实验内容说明:以下操作均在查询分析器中使用T-SQL语句完成,具体操作代码直接写在各题号的下方。
1、创建图书管理数据库Library,所有文件均保存在C盘根目录下。
操作项目如下:(1)创建图书管理数据库Library,其中的主数据文件library的初始大小为10MB,文件增长设置为“按10%增长”,最大文件大小设置为100MB,日志文件Library_log的初始大小为2MB,文件增长设置为“按10MB增长”,最大文件大小设置为“不限制文件增长”。
use mastergocreate database Libraryon primary(name='Library',filename='c:\Library.mdf',size=10,maxsize=100,filegrowth=10%)log on(name='Library_log',filename='c:\Library_log.ldf',size=2,filegrowth=10)go(2)为图书管理数据库Library增加文件组LIBRARYGROUP和数据文件Library_DATA,文件初始大小为3MB,文件增长设置为“按10%增长”,最大文件大小设置为100MB,该数据文件属于LIBRARYGROUP文件组。
use mastergoalter database Libraryadd filegroup LIBRARYGROUPgoalter database Libraryadd file(name='Library_DATA',filename='c:\Library_DATA.ndf',size=3,maxsize=100,filegrowth=10)to filegroup LIBRARYGROUPgo2、在上述图书管理数据库Library中,创建所需要的数据表,具体包含读者表Reader,读者分类表ReaderType,图书表Book,图书分类表BookType和借阅记录表Record。
数据库实验-数据表创建与管理
广州XX学院数据库管理及应用实验报告专业班级计算机181 实验日期2020.4.18 姓名李XX 学号20181532 实验名称数据表创建与管理指导教师王琢(报告内容包括实验目的、实验设备及器材、实验内容、实验步骤、实验结果、实验小结等)一、实验目的要求学生熟练掌握和使用SQL Server Management Studio、T-SQL语句创建和删除数据库,并对数据表和表中的数据进行有效的管理。
二、实验设备及器材Windows平台、SQL Server 2012。
三、实验内容实验3.1在学生管理数据库EDUC中利用T-SQL语句创建数据表。
习题3.2分别使用SQL Server Management Studio、T-SQL语句创建图管理数据库TSGL中的4个数据表的结构,即readers(读者信息表)、books(图书信息表)、borrowinf (借阅信息表)、readtype(读者类型表)。
习题3.3利用SQL Server Management Studio、T-SQL分别向表中输入数据。
习题3.4依照上述实验完成下列操作。
1)用INSERT命令在readers表中插入两条记录。
2)用UPDATE命令将readtype表中教师的限借阅数量改为30、借阅期限改为180天。
3)用DELETE命令删除书名为“数据结构”的图书信息。
四、实验步骤3.11)院系信息表Dept_infoUSE EDUCGOCREATE TABLE Dept_info(Don char(4)primary key,dname char(16)NOT NULL,d_chair char(8),d_address varchar(50),tel char(20))GO2)班级信息表Class_infoUSE EDUCGOCREATE TABLE Class_info(classno char(4)primary key,classname char(16)not null,monitor char(8),instructor char(8),tel char(12),dno char(4),foreign key (dno)REFERENCES Dept_info(dno))GO3)学生信息表Student_infoUSE EDUCGOCREATE TABLE Student_info(sno char(8)primary key,sname char(8)not null,sex char(2),s_native varchar(50),birthday smalldatetime,dno char(4),classno char(4),entime smalldatetime,home varchar(50),tel char(12),foreign key(dno)REFERENCES Dept_info(dno),foreign key(classno)REFERENCES Class_info(classno) )GO4)教师信息表Teacher_infoUSE EDUCGOCREATE TABLE Teacher_info(tno char(8)primary key,tname char(8)not null,sex char(2),birthday smalldatetime,dno char(4),title char(14),home varchar(50),tel char(12),foreign key(dno)REFERENCES Dept_info(dno))GO5)课程信息表Course_infoUSE EDUCGOCREATE TABLE Course_info(cno char(10)primary key,cname char(20)not null,experiment tinyint,lecture tinyint,semester tinyint,credit tinyint)GO6)学生成绩信息表SC_infoUSE EDUCGOCREATE TABLE SC_info(sno char(8)primary key,tcid char(2)not null,score tinyintforeign key(sno)REFERENCES Student_info(sno) )GO7)教师上课信息表TC_infoUSE EDUCGOCREATE TABLE TC_info(tcid char(2)primary key,tno char(8),score tinyint,classno char(4),cno char(10)not null,semester char(6),schoolyear char(10),classroom varchar(50),classtime varchar(50),foreign key(tno)REFERENCES Teacher_info(tno), foreign key(classno)REFERENCES Class_info(classno), foreign key(cno)REFERENCES Course_info(cno))GO3.2使用SQL Server Management Studio建表:1)readers(读者信息表)2)books(图书信息表)3)borrowinf(借阅信息表)4)readtype(读者类型表)T-SQL语句建表(TSGL):(1)readers(读者信息表)USE TSGLCREATE TABLE readers(ReaderID char(10) NOT NULL, Name char(8),ReaderType int, BorrowedQuantity int)(2)books(图书信息表)USE TSGLCREATE TABLE books(BookID char(15) NOT NULL, Name varchar(50),Author char(8),Publisher varchar(30), PublishedDate smalldatetime, Price real NULL)(3)borrowinf(借阅信息表)USE TSGLCREATE TABLE borrowinf(ReaderID char(10) NOT NULL, BookID char(15) NOT NULL, BorrowedDate datetime NOT NULL, ReturnDate datetime)(4)readtype(读者类型表)USE TSGLCREATE TABLE readtype(TypeID int NOT NULL,Name varchar(20) NOT NULL,LimitBorrowQuantity int,BorrowTerm int)3.3利用SQL Server Management Studio、T-SQL分别向表中输入数据。
数据库表的创建与管理
数据库技术SQL 实验报告书
2.修改表的结构(添加和删除表的列、修改数据类型和宽度)
(1)使用Transact-SQL语句
给teacher表增加一列,字段名:stature(即身高),字段类型:numeric,字段长度:5,2,允许为空。
插入后再将其删除。
插入后再将stature列删除。
②将teacher表中的teacher_id字段的宽度改为10,然后将该表的“修改”窗口抓图,粘贴于此:
接着再把teacher_id字段的宽度改回9。
3.对表添加、修改、删除数据
(1) 使用Transact-SQL语句
1)插入数据。
向teacher表中插入一行数据,具体数据如下,
教师标识: dep04_006,姓名:张三,
性别:男,出生年月: 1970-1-1,系号:dep_04,职位:讲师,
联系电话:87654321,邮政编码:510000
家庭住址:广东机电职业技术学院
相应的语句如下:。
实验1-4 数据库和表的创建
实验一数据库和表的创建、修改和删除一、实验目的掌握利用SQL Server2000及其交互式查询语言SQL进行数据定义的基本操作(如建立、修改、删除基本表)。
二、实验设备与环境1.硬件:电脑一台。
2.软件:Windows 2000/XP等操作系统,安装SQL Server 2000个人版或企业版。
三、实验内容1.掌握查询分析器及企业管理器的使用。
2.利用查询分析器,使用SQL中的CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。
四、实验步骤(一)、利用企业管理器进行操作。
1.使用“”创建数据库“学生数据库”。
在“数据库”上右键单击选择“新建数据库”,如图2.1所示。
图2.1新建数据库2.在“数据库属性”中的名称中,输入“学生数据库”。
可以通过“数据文件”与“事务日志”选项分别查看数据库数据文件与事务日志的属性,如图2.2所示。
图2.2 数据库属性3.在新建的“学生数据库”上右键单击,选择“新建”中的“表”,开始创建数据表,如图2.3所示。
图2.3 新建数据表4.在创建数据表的对话框中,输入数据表的各个字段名称、选择合适的数据类型、长度以及确定该字段是否允许空,如图1.4所示。
图2.4 创建数据表的各个字段5.创建表的主键。
在Student表中Sno为主键,在Sno字段的左边,单击鼠标右键选择“设置主键”。
如果某个表的主键由多个字段联合组成,可以通过Ctrl键将多个字段选中,然后按上述方法设置主键。
如图2.5所示。
图2.5 设置表的主键6.将表建好以后要对其进行保存,在保存表对话框中输入表的名称。
如图2.6所示。
图2.6 保存表7.按照以上步骤,完成课程表Course和选课表SC。
8.表建好以后,可以添加数据。
在“学生数据库”中找到上述建立的Student表,右键单击选择“打开表”中的“返回所有行”,如图2.7所示。
图2.7 选择查看数据表的数据9.通过步骤8可以看到Student表中的所有数据,在表中另起一行,向表中添加新的数据,如图2.8所示。
sql 数据库 实验四:管理SQL Server数据表的数据
实验四:管理SQL Server数据表的数据一、实验目的1.熟悉数据表结构及使用特点;2.熟悉使用Management Stuio界面方式管理数据表数据;3.熟悉使用T-SQL语句管理数据表数据。
二、实验学时2学时三、实验要求1.了解SQL Server数据表数据的管理方法;2.了解SQL Server数据类型;3.完成实验报告(部分题只需给出关键语句)。
四、实验内容依据数据表的结构创建相对应的数据表(student、course、sc),请分别使用Management Stuio界面方式及T-SQL 语句实现进行以下操作:1.向各个数据表中插入如下记录:学生信息表(student)课程信息表(course)选课信息表(sc)2.查看数据表信息1)查看数据表Student所有记录2)查看数据表Student中字段sno、sname的所有记录3.修改数据表信息1)修改student表,将cs系姓名为“李咏”的学生姓名为“李勇”;2)将学号为“200515010”的学生信息重新设置为“王丹丹、女、20、MA”;3)修改course表,将“数据处理”的学分改为3学分;4)修改CS表,将选修课程“1”的同学成绩加5分;5)删除数据表student中无专业的学生记录;6)删除数据表course中学分低于1学分的课程信息;注:第2题与第3题需要在实验报告册中写出每道题的T-SQL语句。
五、实验步骤1. 向各个数据表中插入如下记录:方法一:用Management Studio实现数据添加(1)启动SQL Server Management Studio。
(2)在资源对象管理器中选择“表”,单击鼠标右键,然后从弹出的快捷菜单中选择“编辑前200行”命令。
(3)在表窗口中,显示出当前表中数据,单击表格中最后一行,填写相应数据信息。
方法二:用T-SQL 语句实现数据添加如:对于student表来说插入第一条数据的命令是INSERT INTO Student VALUES(‘200515001’,’赵菁菁’,’女’, 23,‘CS’)或INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept) VALUES (200515001’,’赵菁菁’,’女’, 23,‘CS’)2.查看数据表信息命令方式:在【SQL Server Management Studio】窗口左上方选择【新建查询】按钮,启动SQL编辑器窗口,在光标处输入T-SQL语句,单击【执行】按钮。
数据库表的创建与管理操作指南
数据库表的创建与管理操作指南1. 引言数据库表是存储和组织数据的重要组成部分。
在创建和管理数据库表时,我们需要遵循一些基本原则和最佳实践,以确保数据库的性能、可维护性和安全性。
本文将为您提供数据库表的创建与管理操作指南,帮助您正确地进行数据库表的设计和管理。
2. 数据库表的创建在创建数据库表之前,我们需要进行一些必要的准备工作。
首先,我们需要明确数据库中需要存储的数据类型和结构。
其次,我们需要了解数据库系统的特点和限制,例如支持的数据类型、最大表大小等。
2.1 数据类型选择数据库系统通常支持多种数据类型,包括整数、字符串、日期和时间等。
在选择数据类型时,我们应根据实际需求和数据特性进行选择,以节约存储空间和提高查询效率。
2.2 表的设计在进行表的设计时,我们需要关注以下几个方面:- 数据表的命名:选择一个有意义且易于理解的表名,能够准确反映表所存储的数据内容。
- 数据字段的命名:选择有意义的字段名,能够清晰地描述字段的含义。
避免使用过长或含有特殊字符的字段名。
- 主键的选择:每个表中应当有一个主键,用于唯一标识表中的每一行数据。
主键可以是一个或多个字段的组合。
- 索引的创建:为经常用于查询条件的字段创建索引,可以提高查询效率。
- 外键的使用:在存在关联关系的表之间,可以使用外键来维护数据的完整性和逻辑关系。
3. 数据库表的管理一旦数据库表被创建,我们需要进行有效和安全的管理以确保数据的完整性和系统的高性能。
3.1 表的修改在进行表的修改时,我们需要注意以下几点:- 添加字段:可以使用ALTER TABLE语句向表中添加新字段。
添加字段时,需要仔细考虑如何维护已有数据的完整性。
- 修改字段:使用ALTER TABLE语句可以修改表中的字段。
修改字段时,需要注意是否会影响已有数据的完整性和查询性能。
- 删除字段:使用ALTER TABLE语句可以删除表中的字段。
删除字段时,需要确保不影响已有数据的完整性。
数据库应用实验报告创建数据库和表以及表操作
实验一创建数据库和表以及表操作一、实验目的1.了解SQL Server数据库的逻辑结构和物理结构,表的结构特点;2.了解SQL Server的基本数据类型,空值概念;3.学会在企业管理器中创建数据库和表;4.学会使用T—SQL语句创建数据库和表;5.学会在企业管理器中对数据表进行插入、修改、删除数据操作;6.学会使用T-SQL对数据表进行插入、修改、删除数据操作;二、实验内容1.实验题目(1)创建用于企业管理的员工管理数据库,数据库名为YGGL,包含员工的信息、部门信息以及员工的薪水信息。
数据库YGGL包含下列3个表。
(1)Employees:员工自然信息表。
(2)Departments:部门信息表。
(3)Salary:员工薪水情况表。
各表的结构分别如表T2.1,表T2.2,表T2.3所示。
表T2.1 Employees表结构表T2.2 Departments表结构实验步骤1.在企业管理器中创建数据库YGGL要求:数据库YGGL初始大小为10MB,最大大小为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB(默认为不限制),按1MB增长(默认是按5%比例增长)。
数据库的逻辑文件名和物理文件名均采用默认值,分别为 YGGL_data 和e:\sql\data\MSSQL\Data\YGGL.mdf,其中e:\sql\data\MSSQL为SQL Server 的系统安装目录;事务日志的逻辑文件名和物理文件名也均采用默认值分别为YGGL—LOG 和 e:\sql\data\MSSQL\Data\YGGL_Log.1df。
以系统管理员Administrator是被授权使用CREATE DATABASE语句的用户登录SQL Server服务器,启动企业管理器一>在服务器上单击鼠标右键一>新建数据库一>输入数据库名“YGGL”一>选择“数据文件”选项卡一>设置增长方式和增长比例一>选择“事务口志”选项卡一设置增长方式和增长比例。
数据库和表的创建实验报告
数据库和表的创建实验报告数据库和表的创建实验报告引言:数据库是现代信息系统中的重要组成部分,它可以存储、管理和检索大量的数据。
在数据库中,表是数据的基本单位,它由列和行组成,用于存储具有相同结构的数据。
本实验旨在通过使用SQL语言创建数据库和表,掌握数据库的基本操作。
实验步骤:1. 创建数据库:首先,我们需要使用SQL语句创建一个新的数据库。
在MySQL中,可以使用以下语句创建一个名为"mydb"的数据库:```sqlCREATE DATABASE mydb;```创建数据库后,可以使用以下语句选择要使用的数据库:```sqlUSE mydb;```2. 创建表:接下来,我们需要使用SQL语句创建一个新的表。
表的创建需要指定表的名称和各列的名称、数据类型和约束条件。
以下是一个示例创建名为"students"的表的语句:CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50),age INT,gender VARCHAR(10));```上述语句创建了一个包含id、name、age和gender列的表。
其中,id列被定义为主键,保证了每个记录的唯一性。
name列和gender列被定义为VARCHAR类型,可以存储最大长度为50和10的字符串。
age列被定义为INT 类型,用于存储整数值。
3. 插入数据:创建表后,我们可以使用INSERT语句向表中插入数据。
以下是一个示例插入数据的语句:```sqlINSERT INTO students (id, name, age, gender)VALUES (1, 'Alice', 20, 'Female'),(2, 'Bob', 21, 'Male'),(3, 'Charlie', 19, 'Male');```上述语句将三条记录插入到students表中。
数据库和表的创建与管理实验报告
南京信息工程大学实验(实习)报告实验(实习)名称数据库和表的创建与管理实验(实习)日期得分指导教师系计算机专业计算机科学与技术年级班次姓名学号一、实验目的1.熟悉S QL Server 2005 中S QL Server Management Studio 的环境。
2.了解S QL Server 2005 数据库的逻辑结构和物理结构。
3.掌握使用向导创建和删除数据库的方法。
4.掌握使用S QL 语句创建和删除数据库。
5.了解表的结构特点,了解SQL Server 的基本数据类型,管理器创建表,会用T-SQL语句创建表。
6.管理器中修改表的定义,使用SQL语句修改表的定义。
二、实验内容内容一:使用向导创建和删除数据库。
内容二:使用SQL 语句创建和删除数据库。
内容三:用向导和SQL 语句创建和删除表。
‘内容四:修改数据库基本表的定义。
三、实验步骤内容一:设有一学籍管理系统,其数据库名为“EDUC”,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB 增长。
数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”。
日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。
(1)使用向导创建上诉描述的数据库。
1.建立数据库2.修改数据库名,数据库逻辑名,初始大小,增长方式等(2)使用向导删除上面建立的数据库。
1.删除数据库:内容二:1.以下是创建数据库userdb1 的SQL 语句,Create database userdb1On((name='userdb4_data',/*数据文件的逻辑名称,注意不能与日志逻辑同名*/filename='d:\sql_data\userdb4.mdf' ,/*物理名称,注意路径必须存在*/size=5,/*数据初始长度为M*/maxsize=10,/*最大长度为M*/filegrowth=1)/*数据文件每次增长M*/log on(( name=userdb4_log,filename='d:\sql_data\userdb4.ldf ' ,size=2,maxsize=5,filegrowth=1)Goa.选“视图”-“模板资源管理器”-Database-create database,双击databaseb.编写上述代码:2.根据步骤1 的sql 语句,写出创建实验二中数据库EDUC 的sql 语句,并建立数据库EDUC.3.用SQL 语句删除步骤一建立的数据库userdb1。
数据库及数据库中表的建立实验报告
数据库及数据库中表的建立实验报告一、实验目的本次实验的主要目的是熟悉数据库管理系统的操作环境,掌握数据库及数据库中表的建立方法,理解数据库设计的基本概念和原则,提高数据管理和组织的能力。
二、实验环境本次实验使用的数据库管理系统是 MySQL 80,操作系统为Windows 10。
三、实验内容及步骤(一)数据库的建立1、打开 MySQL 命令行客户端,输入用户名和密码登录到数据库服务器。
2、使用`CREATE DATABASE` 语句创建数据库,例如:`CREATE DATABASE my_database;`,其中`my_database` 为数据库的名称。
(二)表的建立1、选择要操作的数据库,使用`USE` 语句,如:`USEmy_database;`。
2、使用`CREATE TABLE` 语句创建表。
以下是创建一个名为`students` 的表的示例,其中包含`id`(整数类型,主键,自增)、`name`(字符串类型,长度为 50)、`age`(整数类型)和`grade`(浮点数类型)等字段:```sqlCREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),age INT,grade FLOAT);```(三)数据的插入1、使用`INSERT INTO` 语句向表中插入数据。
例如:```sqlINSERT INTO students (name, age, grade)VALUES ('张三', 20, 855);INSERT INTO students (name, age, grade)VALUES ('李四', 21, 900);```(四)数据的查询1、使用`SELECT` 语句查询表中的数据。
例如,查询所有学生的信息:```sqlSELECT FROM students;```2、可以根据条件进行查询,如查询年龄大于 20 岁的学生:```sqlSELECT FROM students WHERE age > 20;```(五)数据的更新1、使用`UPDATE` 语句更新表中的数据。
实验四 视图、索引的创建与管理
实验四视图、索引的创建与管理一、实验目的1.了解视图、索引的概念及作用。
2.掌握视图和数据表的区别。
3.掌握索引的分类。
4.掌握创建视图、索引的方法。
5.掌握查看和修改视图、索引的方法。
6.掌握删除视图、索引的方法。
二、实验内容视图实验内容:1.新建BOOKS数据库,使用管理控制台创建名称为“图书借阅信息表”的数据表,表2.在3.使用管理控制台创建一个名为“读者借阅信息_VIEW”的视图,要求显示所在部门是“计算机系”或“外语系”的读者借阅信息,包括“读者编号”、“姓名”、“所在部门”、“图书编码”和“图书状态”五个字段。
4.使用SQL语句创建一个名为“计算机系续借信息_VIEW”的视图,要求显示计算机系读者2010-10-1以后续借的图书信息,包括“姓名”、“图书编码”和“借阅日期”三个字段。
5.使用管理控制台查看“读者借阅信息_VIEW”视图的定义信息和依赖的对象。
6.使用系统存储过程查看“计算机系续借信息_VIEW”视图的定义信息和依赖的对象。
7.使用管理控制台修改“读者借阅信息_VIEW”视图,要求只显示计算机系男读者借阅信息,包括“读者编号”、“姓名”、“所在部门”、“图书编码”和“图书状态”五个字段。
8.使用SQL语言修改“计算机系续借信息_VIEW”视图,要求显示计算机系或外语系读者2006-1-1以后续借的图书信息,包括“姓名”、“所在部门”、“图书编码”和“借阅日期”四个字段。
9.分别使用管理控制台和SQL语言向视图“读者借阅信息_VIEW”中插入一条记录,看操作能否成功,为什么?10.使用管理控制台删除“读者借阅信息_VIEW”视图。
11.使用SQL语言删除“计算机系续借信息_VIEW”视图。
索引实验内容:12.使用管理控制台创建一个新的索引,索引名称为“IX_姓名_所在部门”,使用的数据表是“读者基本信息表”,所用的字段包括“姓名”和“所在部门”两个字段。
13.使用SQL语句创建一个新的索引,索引名称为“IX_图书状态_借阅日期”,使用的数据表是“图书借阅信息表”,所用的字段包括“图书状态”和“借阅日期”两个字段。
实验四 创建和修改数据表
实训四创建和修改数据表一、实训目的1)熟悉SQL Server Management Studio环境2)掌握创建数据表的操作3)掌握数据输入和修改的操作二、实验内容1)在xscj数据库中分别创建学生情况表xsqk、课程表kc、学生与课程表xs_kc,其表结构分别如表4-1、表4-2、表4-3所示。
3)用INSERT 命令向xsqk 表中插入一条新记录:020107,田芳,0,1982-7-15,信息安全,计算机4)将xs_kc 表中的成绩不及格的记录,插入到NOPASS 表中。
5)将xs_kc 表中课程号为“101”的不及格的学生成绩加5分 6)删除xs_kc 表中成绩不及格的记录。
三、实训步骤1) 打开“SQL Server Management Studio ”窗口,单击在“标准”工具栏中的“新建查询”按钮,会出现如图4-1所示的界面。
2) 在“SQL 编辑器”工具栏中,单击“可用数据库”右边的下拉按钮,将当前数据库切换成“xscj ”库。
3) 在查询窗口中,输入如下的命令:CREATE TABLE xsqk(学号 CHAR (6) NOT NULL, 姓名 CHAR (8) NOT NULL, 性别 BIT NOT NULL DEFAULT 1, 出生日期 SMALLDATETIME NOT NULL, 专业名 CHAR (10) NOT NULL, 所在系 CHAR (10) NOT NULL, 联系电话 CHAR (11),图4-1 “新建查询”窗口总学分TINYINT,备注TEXTCONSTRAINT pk_xsqk_xh PRIMARY KEY(学号),CONSTRAINT uq_xsqk_dh UNIQUE(姓名),CONSTRAINT ck_xsqk_xb CHECK(性别=1 OR性别=0),CONSTRAINT ck_xsqk_dh CHECK(联系电话LIKE'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'),CONSTRAINT ck_xsqk_zxf CHECK(总学分>=0 AND总学分<=200))GOCREATE TABLE kc(序号INT IDENTITY,课程号CHAR(3)NOT NULL PRIMARY KEY,课程名CHAR(20)NOT NULL,授课教师CHAR(8),开课学期TINYINT NOT NULL DEFAULT 1,学时TINYINT NOT NULL,学分TINYINT,CONSTRAINT ck_kc_xq CHECK(开课学期>=1 AND开课学期<=6))GOCREATE TABLE xs_kc(学号CHAR(6)NOT NULL REFERENCES xsqk(学号),课程号CHAR(3)NOT NULL,成绩TINYINT CHECK(成绩>=0 AND成绩<=100),学分TINYINT,PRIMARY KEY(学号,课程号),FOREIGN KEY(课程号)REFERENCES kc(课程号) )4)在“SQL编辑器”工具栏中,单击“执行”按钮,xsqk、kc、xs_kc表创建成功后,在结果窗口会出现“命令已成功执行”的信息提示,如图4-2所示。
数据库实验4-实验报告
数据库实验4-实验报告数据库实验 4 实验报告一、实验目的本次数据库实验 4 的主要目的是深入理解和掌握数据库中的某些关键概念和操作,通过实际的操作和实践,提高对数据库管理系统的应用能力,增强解决实际问题的技能。
二、实验环境本次实验使用的数据库管理系统为_____,运行环境为_____操作系统,使用的开发工具为_____。
三、实验内容与步骤(一)创建数据库首先,打开数据库管理系统,使用相应的命令或操作界面创建了一个名为“_____”的数据库。
在创建过程中,指定了数据库的一些基本属性,如字符集、排序规则等,以满足后续数据存储和处理的需求。
(二)创建数据表在创建好的数据库中,根据实验要求创建了若干个数据表。
例如,创建了一个名为“students”的表,用于存储学生的信息,包括学号(student_id)、姓名(student_name)、年龄(age)等字段。
创建表时,仔细定义了每个字段的数据类型、长度、是否允许为空等属性,以确保数据的准确性和完整性。
(三)数据插入接下来,向创建的数据表中插入了一些测试数据。
通过执行相应的插入语句,将学生的具体信息逐个插入到“students”表中。
在插入数据的过程中,特别注意了数据的格式和合法性,避免了因数据错误导致的插入失败。
(四)数据查询完成数据插入后,进行了各种查询操作。
使用了简单的查询语句,如“SELECT FROM students”来获取所有学生的信息。
还使用了条件查询,如“SELECT FROM students WHERE age >18”来获取年龄大于 18 岁的学生信息。
通过这些查询操作,熟悉了如何从数据库中获取所需的数据。
(五)数据更新对已有的数据进行了更新操作。
例如,通过执行“UPDATE students SET age = 20 WHERE student_id =1”的语句,将学号为 1 的学生的年龄更新为20 岁。
在更新数据时,谨慎操作,确保只更新了预期的记录。
数据库实验四(含答案)
实验四使用SQL语句创建和删除数据库、表一. 实验目的:1、了解SQL Server 2005数据库的逻辑结构和物理结构。
2、掌握使用SQL 语句创建和删除数据库。
3、学会使用T-SQL语句创建表。
二. 实验准备1.明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。
2.了解用SQL语句创建和删除数据库的基本语法。
3.是用查询分析器,完成用SQL语句创建和删除基本表。
三. 实验要求1、熟练使用查询分析器进行数据库的创建和删除操作。
2、用查询分析器,完成用SQL语句创建和删除基本表。
3、完成实验报告。
四. 实验内容一、数据库1.以下是创建数据库userdb1的SQL语句,create database userdb1on(name=userdb4_data,--数据文件的逻辑名称,注意不能与日志逻辑同名filename='g:\xygl\userdb4.mdf' ,--物理名称,注意路径必须存在size=5,--数据初始长度为5Mmaxsize=10,--最大长度为10Mfilegrowth=1)--数据文件每次增长1Mlog on( name=userdb4_log,filename='g:\xygl\userdb4.ldf ' ,size=2 ,maxsize=5 ,filegrowth=1)运行上诉语句建立数据库userdb12.根据步骤1的sql语句,写出创建实验二中“学生信息”数据库的sql语句,并建立“学生信息”数据库.(.mdf的名字可以修改)3.数据库的修改(alter database 数据库名add file),将一个大小为10MB 的数据文件mrkj添加到userdb1的数据库中,该数据文件的大小为10MB,最大的文件大小为100MB,增长速度为2MB,物理地址与原有的mdf,ldf文件放在一起。
alter database 数据库名 add file()注括号内格式同下:( name=userdb4_log,filename='g:\xygl\userdb4.ldf ' ,size=2 ,maxsize=5 ,filegrowth=1)4.修改文件alter database数据库名modify file()注括号内表示修改后的属性信息,格式同下:( name=userdb4_log,filename='g:\xygl\userdb4.ldf ' ,size=2 ,maxsize=5 ,filegrowth=1)5.删除文件mrkj(alter database数据库名remove file+文件名)6.用SQL语句删除步骤一建立的数据库userdb1。
数据库及数据库表的建立实验报告
实验1 数据库及数据库表的建立实验一.实验目的使学生熟悉SQL Server的企业管理器的用法,初步了解SQL Server查询分析器的使用方法,熟悉SQL SERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解.熟练掌握简单表的创建与修改.二.实验时数3学时三.实验内容(一)基本表的建立:1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.2.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).3.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'4.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"2.删除cj表中rkjs一列3.将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)改为char(10)4.增加cjdj表的列cj增加一个约束要求cj>0 and cj<=1005.建立一个临时表,再将其删除6.索引的建立与删除(理解以下语句的含义并上机实践):create unique index stu_xh on student(xh)create index xh_kch on cj(xh asc,kch desc)drop index student.xh_kch四.实验方法在SQL查询分析器"完成以上的任务.并检查所做的操作表现.五.实验步骤:(一)基本表的建立1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.程序:CREATE TABLE student1(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20) );SELECT * FROM student12.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).程序:CREATE TABLE student2(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20),CHECK(nl>0));SELECT *FROM student23.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'程序:CREATE TABLE student3 (xh INT PRIMARY KEY, xm CHAR(20),xb CHAR (2) DEFAULT'男', nl INT,xi CHAR(20));SELECT *FROM student34.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键CREATE TABLE kc(kch INT PRIMARY KEY,kcmc CHAR(20),xxkc CHAR (2),xf INT );select *from kc5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键程序:CREATE TABLE ciji(xh INT ,kch INT,cj CHAR (20),PRIMARY KEY(xh,kch),FOREIGN KEY(xh) REFERENCES student(xh), FOREIGN KEY(kch) REFERENCES kc(kch), );SELECT *FROM student2(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"程序:alter table cjadd rkjs char(20);select *from cj;2.删除cj表中rkjs一列程序:alter table cijidrop column rkjs ;select *from ciji;3.将student表的xm一列允许空值的属性更改成不允许为空。
数据库的创建与管理实验报告
使用T-SQL语句创建课程表C o urse和选课表S CCREATE TABLECourse(Cno char(4) primar y key NOT NULL, Cnamechar(40),Cpno char(4),Ccredi t int,foreig n key(Cpno) refere ncesCourse(Cno));create tableSC(Sno char(9) not null,Cno char(4) not null,Gradeint,primar y key(Sno,Cno),foreig n key(Sno) refere ncesStuden t(Sno),foreig n key(Cno) refere ncesCourse(Cno));(3)使用T-SQL语句修改Stud ent表的结构:将姓名改为6位定长字符串、新增入学时间列、新增姓名取唯一值的约束条件、删除入学时间列。
altertableStuden t add S_en DATETI MEaltertableStuden tdrop column S_en(4)使用T-SQL语句为S tude nt表,按Sdept列建立一个聚簇索引,为SC表按学号升序和课程号降序建立唯一索引create cluste red indexStusde pt on Studen t(sdept)create unique indexScon on SC(Sno ASC,Cno DESC)(5)利用企业管理器分别向学生表Stu dent、课程表Cou rse和选课表SC添加如下表所示的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库实验实验四
计科二班
叶雨琪
20134650
实验四数据库表的创建和管理
一、目的与要求
1.掌握数据库表的两种创建方法;
2.掌握完整性约束的设置方法;
3.掌握导入导出数据的操作方法;
二、实验准备
1.了解完整性约束的概念,分类;
2.了解T-SQL创建、修改和删除表的语法格式;
3.了解数据导入导出。
三、实验内容
(一) 在对象资源管理器中创建数据库表
创建数据库studb,存储属性为默认,在studb数据库中建立数据表。
结构如图4-1所示:
图4-1
需要定义的约束有:
1.主键和外键,依据图中标识建立按住Ctrl键鼠标选中要设为主键的两个表,
2.S表中在s_name上建立唯一键约束。
选择sname右键索引/键添加类型选择唯一键列选择sname
3.C表中设置check约束为ccredit不能为负数
ccredit右键CHECK约束添加常规表达式写ccredit>=0
3.SC表中score默认值为0
选中score右键CHECK约束添加常规表达式写score=0
(二) 使用T-SQL语句修改表
1.在S表中增加新的列,列名sfzh,数据类型为varchar(18)。
alter table dbo.S add sfzh varchar(18)
2.在C表中增加外键约束,外键是cpno,参考C表的cno列。
alter table dbo.C add constraint cpno foreign key(cno)
references dbo.C(cno)
3.在SC表中删除默认值约束。
alter table dbo.SC drop constraint CK_SC
(三)建立关系图
如图4-1建立studb数据库中的关系图。
(四)在表中录入以下数据:在S表中添加如下记录:
C表中添加如下记录:
SC表中添加如下记录:
(五) 使用T-SQL语句建立表
在studb数据库中建立教师表T,结构如图4-2:
use studb
go
create table T (tno char(6) null,
tname varchar(10) null,
tsex char(2) null,
tbirday datetime null,
salary money null,
title varchar(10) null)
go
图4-2
(六)建立规则和默认值
1.创建规则对象rule_tsex,设置性别只能为‘男’或‘女’,并绑定到T表的tsex 列上。
输入数据进行检验。
create rule rule_tsex
as
@sex='男' or @sex='女'
go
exec sp_bindrule 'rule_tsex','T.tsex'
2.创建默认值对象df_salary,值为0,绑定到T表的salary列。
create default df_salary as 0
go
execute sp_bindefault 'df_salary','T.salary'
3.要删除以上建立和规则和默认值对象,要如何操作?
(七)导入导出数据
1.将数据库中的S、C和SC表,导出到“E:\学号文件夹”目录中的Excel文件,文件名自定义。
2.在studb数据库中导入提供的excel文件TC.xls。
最后保存studb数据库的物理文件,以备之后的实验之用。
四、思考与练习
1.表中的多列作为主键,要如何设置?
按住ctrl建选取要成为逐渐的键后点击鼠标右键,设定为主键
2.在表中定义的默认值和check约束,与规则对象、默认值对象有何区别?
默认值是一种数据库对象,在数据库中定义一次后,可以被多次应用于表中的一列或多列,
还可用于用户自定义的数据类型。