实验:创建和管理其他数据库对象
- 格式:doc
- 大小:178.50 KB
- 文档页数:8
数据库和表的创建实验报告《数据库和表的创建实验报告》摘要:本实验报告旨在介绍数据库和表的创建过程,以及相关的实验步骤和结果。
通过实验,我们深入了解了数据库和表的概念,以及如何使用SQL语句创建和管理数据库和表。
实验结果表明,我们成功创建了数据库和表,并能够对其进行基本的操作和管理。
1. 实验背景数据库是一个存储和管理数据的系统,它可以帮助我们有效地组织和管理大量的数据。
在数据库中,数据以表的形式存储,每个表包含多个字段和记录。
在本次实验中,我们将学习如何使用SQL语句创建数据库和表,并进行相关的实验操作。
2. 实验目的本次实验的主要目的是让我们掌握数据库和表的创建方法,以及相关的SQL语句和操作。
通过实验,我们将学习如何创建数据库、创建表,以及对表进行基本的操作和管理。
3. 实验步骤首先,我们需要使用SQL语句创建一个新的数据库。
我们可以使用CREATE DATABASE语句来创建数据库,语法如下:CREATE DATABASE database_name;接下来,我们需要在创建的数据库中创建一个新的表。
我们可以使用CREATE TABLE语句来创建表,语法如下:CREATE TABLE table_name (column1 datatype,column2 datatype,...);在创建表之后,我们可以使用INSERT语句向表中插入数据,使用SELECT语句查询表中的数据,使用UPDATE语句更新表中的数据,以及使用DELETE语句删除表中的数据。
4. 实验结果经过实验操作,我们成功创建了一个新的数据库,并在其中创建了一个新的表。
我们使用INSERT语句向表中插入了一些数据,使用SELECT语句查询了表中的数据,使用UPDATE语句更新了表中的数据,以及使用DELETE语句删除了表中的数据。
实验结果表明,我们能够熟练地使用SQL语句对数据库和表进行操作和管理。
5. 实验结论通过本次实验,我们深入了解了数据库和表的创建方法,以及相关的SQL语句和操作。
《数据库实验》实验报告一、实验目的本实验旨在通过设计与实现一个简单的学生信息管理系统,来加深对数据库基本概念和SQL语言的理解,并掌握数据库的创建、表的设计、数据的增删改查等基本操作。
二、实验环境本次实验的开发环境为以下软件与工具:1. 数据库管理系统:MySQL2. 编程语言:Java3. 开发工具:Eclipse IDE4. Web服务器:Apache Tomcat三、实验内容及步骤1. 数据库的创建与连接首先,在MySQL中创建一个名为"student_system"的数据库,并通过JDBC连接该数据库。
在Java代码中,使用JDBC的API进行数据库连接操作,包括加载驱动、建立连接等步骤。
2. 数据表的设计与创建在student_system数据库中创建一个名为"student"的数据表,该表用于存储学生的基本信息。
表中应包含学号(id)、姓名(name)、性别(gender)和专业(major)等字段,并设置合适的数据类型和约束。
3. 数据的插入与修改通过SQL语句,在student表中插入若干条学生信息,包括学号、姓名、性别和专业。
同时,通过SQL的UPDATE语句,修改某些学生的信息。
4. 数据的查询编写SQL语句,实现对学生信息的查询。
可以根据学号或姓名等关键字进行查询,并返回符合条件的学生信息。
5. 数据的删除根据指定的学号或姓名,编写SQL语句实现对学生信息的删除操作。
删除后,该学生的信息将不再存在于数据库中。
四、实验结果经过以上实验步骤的设计与实现,在学生信息管理系统中,成功地创建了student表,并成功插入了若干学生信息。
通过SQL语句的查询和修改操作,可以准确地获取和修改学生的信息。
此外,删除操作也能够成功地从数据库中删除指定学生的信息。
五、实验总结通过本次实验,我进一步掌握了数据库的基本操作与SQL语言的应用。
在实验过程中,我理解到数据库的设计与搭建是一个关键步骤,合理的表结构和约束条件对于数据的管理和有效性有着重要的影响。
实验四创建和管理表一、实验目的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。
学生学号实验课成绩武汉理工大学学生实验报告书课程名称数据库系统概论开课学院计算机科学与技术学院指导老师学生姓名专业班级2011 —2012 学年第二学期实验课程名称:数据库系统概论实验项目名称关系代数、ALPHA语言、QBE语言查询实验成绩实验者专业班级组别同组者实验日期年月日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)设有一个SPJ数据库,包括S,P,J,SPJ 4个关系模式:S(SNO,SNAME,STATUS,CITY)P(PNO,PNAME,COLOR,WEIGHT)J(JNO,JNAME,CITY)SPJ(SNO,PNO,JNO,QTY)试着用关系代数、ALPHA语言、QBE语言完成如下查询:1 求供应工程J1零件的供应商号码SNO;2 求供应工程J1零件P1的供应商号码SNO;3 求供应工程J1零件为红色的供应商号码SNO;4 求没有使用天津供应商生产的红色零件的工程号JNO;5 求至少用了供应商S1所供应的全部零件的工程号JNO。
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)一般关系运算:1.选择:它是在关系R中选择满足给定条件的诸元组,记作σF(R)={t|t∈R∧F(t)=’真’}2.投影:是从R中选择出若干属性列组成新的关系,记作πA(R){t【A】| t∈R}3.连接 :是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。
4.除运算:R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上得投影:元组在X上分量值X的象集Ys包含S在Y上得投影的集合。
三、主要仪器设备及耗材本次实验为理论性实验,只需要对关系代数有一定了解并能写出查询语句集合,不需要什么试验设备。
第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)查询资料,对自己写的查询语句进行验证,仔细检查是否正确。
实验二数据库的创建和管理开课实验室:指导老师:学院:专业(班级):姓名:学号:一、实验目的与要求1)掌握用企业管理器和T-SQL语句创建数据库的方法。
2)掌握修改数据库,数据库更名的方法。
3)掌握删除数据库的方法。
二、实验过程设计及实验步骤1.在SQL Server企业管理器中创建一个数据库,具体要求如下:(1)数据库名称为Test1。
(2)主要数据文件:逻辑文件名为Test1Data1,物理文件名为Test1Data1.mdf,初始容量为2MB,最大容量为10MB,递增量为1MB。
(3)次要数据文件:逻辑文件名为Test1Data2,物理文件名为Test1Data2.ndf,初始容量为2MB,最大容量为10MB,递增量为1MB。
(4)事务日志文件:逻辑文件名为Test1Log1,物理文件名为Test1Log1.ldf,初始容量为2MB,大容量为5MB,递增量为1MB。
2.在查询分析器中输入并执行一个CREATE DATABASE语句,具体要求如下:(1)数据库名称为Test2;(2)主要数据文件:逻辑文件名为Test2Datal,物理文件名为Test2Datal.mdf,初始容量为2MB,最大容量为10MB,递增量为1MB;(3)次要数据文件:逻辑文件名为Test2Data2,物理文件名为Test2Data2. ndf,初始容量为2MB,最大容量为10MB,递增量为1MB;(4)事务日志文件:逻辑文件名为Test2Logl,物理文件名为Test2Logl.Ldf,初始容量为2MB,最大容量为5MB,递增量为1MB。
3.按照下列要求在企业管理器中修改第2题中创建的Test2数据库:(1)主要数据文件的容量为3MB,最大容量为20MB,递增量为2MB。
(2)次要数据文件的容量为3MB,最大容量为20MB,递增量为2MB。
(3)事务日志文件:初始容量为3MB,最大容量为10MB,递增量为2MB。
4.数据库更名,要求:把TEST1数据库改名为new_TEST1。
ACCESS 实验数据库及表的操作一、实验目的1.掌握数据库的创建及其它简单操作2.熟练掌握数据表建立、数据表维护、数据表的操作二、实验内容与要求1.数据库的创建、打开、关闭2.数据表的创建:建立表结构、设置字段属性、建立表之间关系、数据的输入3.数据表维护:打开表、关闭表、调整表外观、修改表结构、编辑表内容4.数据表的操作:查找替换数据、排序记录、筛选记录三、实验步骤案例一:创建数据库1.创建空数据库要求:在移动盘上建立“\experiment\ACCESS\实验一”文件夹,并在其下建立“教学管理.accdb”数据库。
创建数据库文件操作步骤:图1-1创建教学管理数据库(1)在Access 2010启动窗口中,在中间窗格的上方,单击“空数据库”,在右侧窗格的文件名文本框中,给出一个默认的文件名“Database1.accdb”。
把它修改为“教学管理”如图1-1所示。
(2)单击按钮,在打开的“新建数据库”对话框中,选择数据库的保存位置,在“\ experiment\ACCESS\实验一”文件夹中,单击“确定”按钮,如图1-2所示。
(3)这时返回到access启动界面,显示将要创建的数据库的名称和保存位置,如果用户未提供文件扩展名,access将自动添加上。
(4)在右侧窗格下面,单击“创建”命令按钮,如图1-1所示。
(5)这时开始创建空白数据库,自动创建了一个名称为表1的数据表,并以数据表视图方式打开这个表1,如图1-3所示。
图1-2“文件新建数据库”对话框(6)这时光标将位于“添加新字段”列中的第一个空单元格中,现在就可以输入添加数据,或者从另一数据源粘贴数据。
图1-3表1的数据表视图2.使用模板创建Web数据库要求:利用模板创建“联系人Web数据库.accdb”数据库,保存在“\ experiment\ACCESS\实验一”文件夹中。
操作步骤:(1)启动Access。
(2)在启动窗口中的模板类别窗格中,双击样本模板,打开“可用模板”窗格,可以看到Access提供的12个可用模板分成两组。
计算机与信息学院数据库原理实验报告专业:计算机科学与技术班级:2012级本科班学号:07173姓名:指导教师:2014年06月18 日实验项目列表计算机与信息学院实验报告纸实验一数据库创建与管理一、实验目的与要求1、熟练掌握SSMS中界面方式创建和管理数据库。
2、熟练掌握SSMS查询编辑器T-SQL语句创建和管理数据库。
3、熟练掌握备份和还原数据库。
二、实验内容1、界面方式创建和管理数据库(1)创建数据库(2)修改数据库(3)删除数据库2、利用企业管理器备份和还原数据库(1)备份数据库(2)还原数据库3、T-SQL语句方式创建和管理数据库(1)创建SPJ数据库:在SSMS中“新建查询”,输入以下语句并运行CREATE DATABASE SPJON(NAME=’SPJ_Data’,FELENAME='C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Data.MDF' ,SIZE = 3,MAXSIZE = 10,FILEGROWTH = 10%)LOG ON(NAME = 'SPJ_Log', FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Log.LDF' ,SIZE = 1,FILEGROWTH = 10%)(2)修改SPJ数据库:在查询分析器中输入以下语句并运行ALTER DATABASE SPJMODIFY FILE(NAME='SPJ_Data',SIZE=4,ALTER DATABASE SPJADD FILE(NAME='SPJ_Data_2', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SPJ_Date_2.ndf',SIZE=1,MAXSIZE=10,FILEGROWTH=10%)(3)删除SPJ数据库:DROP DATABASE SPJ4、界面方式创建数据库XSBOOK,写出操作过程。
数据库实验报告一、实验目的本次数据库实验的主要目的是深入了解数据库的基本概念和操作,掌握数据库管理系统的使用方法,提高对数据的管理和处理能力。
通过实际操作,我们希望能够熟练运用SQL 语句进行数据的查询、插入、更新和删除,以及创建和管理数据库表、索引和视图等对象。
二、实验环境本次实验使用的数据库管理系统是 MySQL 80,操作系统为Windows 10。
实验在个人计算机上进行,使用 MySQL Workbench 作为数据库管理工具。
三、实验内容1、数据库创建使用 CREATE DATABASE 语句创建了一个名为“student_management”的数据库,用于存储学生管理相关的数据。
2、表的创建在“student_management”数据库中,创建了以下几张表:“students”表,包含学生的学号(student_id)、姓名(name)、性别(gender)、年龄(age)等字段。
“courses”表,包含课程的课程号(course_id)、课程名称(course_name)、学分(credit)等字段。
“enrolls”表,用于关联学生和课程,包含学生学号(student_id)、课程号(course_id)和成绩(grade)等字段。
3、数据插入使用 INSERT INTO 语句向上述表中插入了一些示例数据,以方便后续的查询和操作。
4、数据查询通过 SELECT 语句进行了多种查询操作,例如:查询所有学生的信息。
查询特定性别学生的信息。
查询选修了某门课程的学生名单及成绩。
5、数据更新使用 UPDATE 语句对部分学生的年龄或成绩进行了修改。
6、数据删除使用 DELETE 语句删除了一些不再需要的数据记录。
7、索引创建为“students”表的“student_id”字段和“courses”表的“course_id”字段创建了索引,以提高查询效率。
8、视图创建创建了一个名为“student_course_grade_view”的视图,用于展示学生的学号、姓名、课程名称和成绩。
《数据库管理与开发》实验报告课程号:B0900990-0实验项目:数据库设计、创建,表及各种对象的创建、管理与应用(2)、全部选中之后然后点击“执行”,就会执行相应的语句,并在命令窗口显示“命令已经成功完成”。
如下图所示:(3)、然后刷新左边的数据库,就会出现我们所建立的OnlineShopping数据库。
(4)、然后找到E盘的OnlineShopping文件夹,点击进入之后就会看到包含我们所建立的数据文件和事务日志文件。
说明创建数据库成功。
2.在数据库中建表。
(1)、创建“客户表”。
(2)、创建“商品表”。
(3)、创建“生产厂商表”。
(4)、创建“商品类别表”。
(5)、创建“订单总表”。
(6)、创建“订单明细表”。
(7)、创建“供应表”。
注意这个表有点特殊的是:由两个属性共同的作为主键,要用CONSTRAIT 主键名PRIMARY KEY(属性A,属性B)(8)、创建“评论表”。
(9)、表全部创建完成之后,刷新数据库,可以看到这些表。
3、在数据库中创建索引。
说明:索引包含“唯一性索引”,“主键索引”,“聚集索引”。
因为生成的表的时候系统自动的为每一个表设置了“主键索引”如图所示,“聚集索引”是指表中的各记录的物理顺序与键值的逻辑顺序一致。
一张表中只能有一个“聚集索引”。
而系统中的这个主键索引也是聚集索引,所以不能再对表格创建聚集索引。
所以我下面创建的是唯一性索引,全部都是非聚集索引。
(1)、在“客户表”中创建了一个按“身份证号”列建立的唯一索引“Customer”。
说明:这里创建的是唯一索引,唯一索引的含义是对于表中的任何两行记录来说,索引键的值都各不相同。
并且要注意,如果表中一个字段或者多个字段的组合在多行记录中具有NULL值,则不能将这个字段或者字段组合作为唯一索引键。
因为对于每一个表的主键系统都自动的设置了相应的索引,在“客户表”中,身份证号是绝对不能相同的,所以可以设置为唯一索引键。
(2)、在“商品表”中创建了一个按“单价”列建立的非聚集索引“Goods”。
数据库运维形考任务5在当今数字化的世界中,数据库已经成为企业、政府和学术界等各个领域的重要信息存储和管理工具。
为了确保数据库的稳定、安全和高效运行,数据库运维工作显得至关重要。
本文将探讨数据库运维形考任务5的相关内容。
一、任务描述本次形考任务的目标是完成一个数据库的运维工作。
具体包括数据库的安装、配置、备份与恢复、优化以及安全防护等方面。
通过本次任务,旨在加深对数据库运维工作的理解和掌握,提高实际操作能力。
二、任务步骤1、安装数据库服务器首先,需要选择合适的数据库服务器,并按照操作指南完成安装过程。
在安装过程中,需要注意服务器的硬件配置、操作系统版本以及数据库版本等因素。
2、配置数据库服务器完成安装后,需要对数据库服务器进行配置。
这包括设置数据库服务器的网络连接、优化数据库性能、配置安全参数等。
在配置过程中,需要确保服务器的正常运行,并做好相应的维护工作。
3、创建与管理数据库在服务器上创建数据库,并管理数据库对象,如表、视图、存储过程等。
同时,需要制定备份与恢复策略,确保数据的安全性和完整性。
4、优化数据库性能通过监控和分析数据库的性能指标,采取相应的优化措施,提高数据库的处理速度和响应时间。
常见的优化方法包括调整数据库参数、优化数据库查询语句、增加硬件资源等。
5、安全防护为防止未经授权的访问和恶意攻击,需要采取安全防护措施。
这包括设置防火墙、定期更新补丁和安全软件、限制用户访问权限等。
同时,需要对重要数据进行加密处理,以保障数据的安全性。
三、任务总结通过本次形考任务,我们深入了解了数据库运维工作的主要内容和流程。
在实际操作过程中,我们不仅提高了对数据库管理的技能和经验,还意识到数据库运维工作的重要性。
为了更好地完成这项任务,我们需要不断学习和掌握更多的技术和工具,以便更好地应对不断变化的业务需求和技术环境。
四、参考文献1、王珊,萨师煊.数据库系统概论(第5版)[M].北京:高等教育社, 2014.2、李劲. SQL Server 2012数据库管理与开发[M].北京:清华大学社, 2014.3、张蒲生.数据库安全技术[M].北京:国防工业社, 2014.数据库运维形考实验5一、引言在信息时代,数据库已经成为企业、机构和组织运作的重要支柱。
创建和管理数据库的实验总结在本次数据库实验中,我学习了创建和管理数据库的基本操作,以下是我的实验总结:1. 数据库的创建在MySQL中,我们可以使用CREATE DATABASE语句来创建数据库。
例如,要创建名为“mydb”的数据库,可以使用以下语句:CREATE DATABASE mydb;2. 数据表的创建在创建数据库之后,我们需要创建数据表来存储数据。
我们可以使用CREATE TABLE语句来创建表。
例如,下面的语句将创建一个名为“customers”的数据表:CREATE TABLE customers (id INT(11) NOT NULL AUTO_INCREMENT,name VARCHAR(255) NOT NULL,email VARCHAR(255) NOT NULL,PRIMARY KEY (id));上面的语句创建了一个具有id、name和email列的表。
id列是自动递增的,这意味着每次插入数据时,它都会自动增加一个新的ID号。
3. 数据的插入我们可以使用INSERT INTO语句将数据插入到数据表中。
例如,下面的语句将向“customers”表中插入一条新记录:INSERT INTO customers (name, email) VALUES ('John Doe', '*******************');上述语句将在“customers”表中创建一个新的记录,其中包含name和email列中的值。
因为id列是自动递增的,MySQL将为该记录自动分配一个新的ID号。
4. 数据的查询我们可以使用SELECT语句从数据表中检索数据。
例如,下面的语句将检索“customers”表中的所有数据:SELECT * FROM customers;上述语句将返回“customers”表中所有记录的完整信息。
5. 数据的更新我们可以使用UPDATE语句来更新数据表中的数据。
数据库表的创建、管理和数据操作(实验⼀),数据库创建数据库表的创建、管理和数据操作(实验⼀),数据库创建今天我们就以实验的形式对表的创建、管理和数据操作进⾏学习,上课吧。
【实验⽬的】:了解SQL语⾔的使⽤,进⼀步理解关系运算,巩固数据库的基础知识。
【实验要求】:利⽤SQL语⾔进⾏数据库表的各种操作:1.数据库表的创建、修改和删除操作。
2.向表中进⾏数据的插⼊、删除和修改操作。
【实验内容】1. 利⽤数据定义语句在实验⼀创建的stu_DB库中建⽴学⽣管理系统的三个表:Student、Course、SC。
2.利⽤INSERT、UPDATE和DELETE语句对上述三张表的数据进⾏插⼊、更新和删除操作。
3.在stu_DB库中添加Teacher和TC表,对已建⽴的学⽣管理系统中的表添加充⾜的数据(每个表不少于20条),以便完成本实验的后继操作。
【实验步骤】⼀、数据定义(⼀)表的创建在实验⼀创建的数据库stu_DB中分别⽤企业管理器和查询分析器,按下⾯的表结构创建学⽣管理系统的表。
1.利⽤企业管理器创建表(1)打开企业管理器。
(2)选中实验⼀创建好的数据库stu_DB,单击数据库中的表对象,然后右击窗⼝右侧选择新建表,弹出如图所⽰窗体。
(3)在这个窗体中,列名列就⽰表的字段名,可以在这个窗体中为字段选择数据类型和长度以及是否可以为空值。
(4)在此处可以为表选择⽂件组,在表中单击右键,选择属性,如果已经为数据库创建了⼀个次要组,可以在属性窗体的表⽂件组中为此表选择⽂件组。
应该把⼀些竞争使⽤的表放于不同的⽂件组中,并且让⽂件组属于不同磁盘,这样可以在表竞争读写时提⾼并发性能。
(5)创建完成后,单击磁盘图标,并为表取⼀个名字。
注意,应该为表取⼀个有意义的名字。
2.⽤Transact_SQL语句创建表语法为:CREATE TABLE[ database_name.[owner].] table_name( {column_name data_type [DEFAULT ‘default_value']|[CONSTRAINT CONSTRAINT_name]}, […n] [IDENTITY [(seed, increment )]])[ON { filegroup | DEFAULT }][TEXTIMAGE_ON {filegroup | DEFAULT }]【例1】⽣成⼀个表名为student的表create table student(sno CHAR(8) primary key,sname CHAR(10) not null,ssex CHAR (2) check (ssex='男'or ssex='⼥'),sage smallint,sdept CHAR (20) default ('计算机系'),)【例2】创建⼀张名为Ta1的表,此表中有3列,第⼀列Pid定义为主键,并且⾃动增长。
实验八 数据库安全管理一、目的与要求1.掌握创建用户和角色的方法2.掌握SQL授权命令和收回权限的命令二、实验准备1.了解SQL Server登录身份和登录模式的概念;2.了解用户、角色、登录三者的概念;3.了解权限授予和收回的的T-SQL语法。
三、实验内容(一)创建登录名1.创建新的登录名testlogin(1)在对象资源管理器的目录树中“安全性” “登录名”,点击右键选择“新建登录名”,设置登录名为testlogin,“SQL Server身份验证”密码为abc,默认数据,如图8-1所示。
库为“studentdb”图8-1提问:此时用testlogin登录名创建新的连接,登录到对象资源管理器,是否能登录成功?不能登陆成功(2)右击testlogin登录名,选择属性,设置“用户映射”,设置“映射到此登录名的,如图8-2所示。
这里即是创建和登录名同名的用户,该用户“为“studentdb”用户属于默认数据库。
这个用户具有的数据库角色是public。
(3)确定后再次以testlogin及其密码登录查ssms,在testlogin登录名下新建查询。
运行命令,查看并记录结果。
提问:此时是否查询命令能查询到st_info表中的数据?为什么?答:不能,因为未获得访问特定数据库中数据的权利。
图8-2(4)若要查询studentdb数据库中表的数据,则要在数据库角色成员身份中选择db_datareader角色(回到sa登录下设置该登录名的属性),再运行上题中的查询语句,查看结果。
(5)在查询编辑器中运行命令,查看是否允许。
若不允许,则要在数据库角色成员身份中选择db_datawriter角色。
重新运行该条更新语句,查看结果。
图8-32.提问:testlogin登录名登录后,允许访问服务器上所有的数据库吗?能访问哪些数据库?。
登录用户只能看到并访问它自己的数据库而不能看到其他的数据库(二)创建用户创建用户时选择映射到已有登录名,即令一个登录名可以访问多个数据库。
创建和管理数据库的实验总结在本次数据库实验中,我们学习了如何创建和管理一个数据库。
此外,我们还学习了SQL语句、表的创建和修改、数据查询、数据的插入、更新和删除。
第一步是创建一个数据库。
我们了解了如何使用MySQL命令行客户端创建一个数据库。
我们使用了CREATE DATABASE语句来创建数据库,可以指定数据库名称和字符集。
在创建数据库后,我们使用USE statement来切换到创建的数据库中。
创建表是下一步。
我们使用CREATE TABLE语句来创建一个新表,我们指定了表的名称,并为每个列指定名称、数据类型和大小。
我们还使用了PRIMARY KEY约束将一列指定为主键,这样就可以更轻松地处理表中的多个记录。
为了进一步学习,我们一起实现了数据查询。
我们使用SELECT语句来提取数据,可以指定要查询的列和条件,排序,甚至可以使用聚合函数来计算数据。
我们还学习了如何使用DISTINCT关键字来删除相同的结果。
接下来,我们学习了如何插入、更新和删除数据。
我们使用INSERT语句来插入新行,使用UPDATE语句来更新现有行,使用DELETE语句来删除行。
我们还学习了如何将指定的值插入自增列中。
在实验的过程中,我们使用了一些技巧来帮助我们更快地完成任务。
例如,我们可以使用DESCRIBE表名称语句来查看表的结构。
我们还学会了使用LIMIT语句来限制返回的行数。
我们还使用了WHERE语句来过滤查询结果。
这门实验让我更好地了解了数据库和SQL语言。
我学会了创造和管理数据库,以及如何查询、更新和删除数据。
我还了解了如何使用不同的技巧将查询结果限制在所需的行数和结果中,并使用约束来保证表中数据的完整性。
让我感到欣慰的是,在此过程中,我还学会了处理MySQL客户端中的错误信息,这是一个非常重要的技能。
在此实验中,我们还学会了详细记录我们的工作。
我们建立了一个工作日志来记录每个命令的输出,以便可以查看历史记录并做出更好的判断或纠正错误。
实验:创建与管理其他数据库对象
一、实验目的
掌握创建管理索引、视图、存储过程和触发器对象的使用方法;
二、实验环境
已安装SQL Server 2005 企业版的计算机;
具有局域网环境,有固定IP;
三、实验学时
4学时
四、实验要求
1.掌握索引的创建和管理方法;
2.掌握视图的创建和管理方法;
3.掌握存储过程的创建和管理方法;
4.掌握触发器的创建和管理方法;
5.完成实验报告;
五、实验内容及步骤
请使用T-SQL 语句实现进行以下操作:
1.在student表的sno列上创建唯一性聚集索引index_sno
use stu
go
create unique clustered index index_sno
on student(sno)
2.在student表的sname列上创建唯一性非聚集索引index_sname
use stu
go
create unique nonclustered index index_sname
on student(sname)
3.在student表的sage列上创建非聚集索引index_sage
use stu
go
create nonclustered index index_sage
on student(sage)
4.在sc表的sno列和cno列上创建复合非聚集索引index_sno_cno
use stu
go
create index index_sno_cno
on sc(sno,cno)
5.将索引index_sno_cno更名为index_snocno
exec sp_rename'sc.[index_sno_cno]','index_snocno','index'
6.删除上面的索引index_snocno
use stu
go
drop index index_snocno
on sc
7.查看student表的索引基本信息
EXEC sp_helpindex student
8.创建一个只选修8号课程的学生情况的视图信息
use stu
go
create view xuanxiu_8
as
select student.sno,
sname,sage,sdept,ssex
from student,sc
where student.sno=sc.sno and cno='8'
group by student.sno,sname,sage,sdept
having count(cno)=1
9.创建一个视图view_stu,只包含学生的学号,姓名,年龄信息
create view view_stu
as
select sno as学生学号,
sname as姓名,
sage as年龄
from student
10.在上一题视图的基础上创建年龄在20岁以上的的学生的视图
create view view_stu1
as
select sno as学生学号,
sname as姓名,
sage as年龄
from student
where sage>20
11.创建一个包含不及格同学及90分以上同学的学号、姓名、课程名称及成绩的视图
create view view_stu2
as
select student.sno as学生学号,
sname as姓名,
cname as课程名,
grade as成绩
from student,sc,course
where student.sno=sc.sno
and o=o
and grade<60 and grade>90
12.选择一个上面创建的视图,查看视图的信息
select*from view_stu1
go
13.选择一个上面创建的视图,修改删除其中的一列
delete view_stu1
where学生学号='200515001'
select*from view_stu1
14. 选择一个上面创建的视图进行删除操作
drop view view_stu1
15.从视图view_stu中查询19岁的男生记录
select*from view_stu
where年龄=19
16.通过视图view_stu中插入一行数据。
学号:2006010010,姓名:赵青,年龄:
insert into view_stu
values('200610010','赵青','20')
select*from view_stu
17.将视图view_stu中姓名为“李蕾”的年龄改为“22”
update view_stu
set年龄='22'
where姓名='李蕾'
18.通过视图 view_stu将姓名为“李贵”的记录删除
delete view_stu
where姓名='李贵'
19.自行选择上面创建的一个视图插入一个记录。
insert into view_stu
values('200515029','刘海涛','21')
select*from view_stu
20.自行选择一个视图根据一定的条件进行查询。
select*from view_stu
where年龄>20
21.自行选择联合一张表和某个视图进行复合查询。
select distinct学生学号,姓名,年龄
from view_stu,sc
where view_stu.学生学号=sc.sno
and grade>80
22.创建存储过程返回全部男生选课及成绩等相关信息
create procedure stu_info
as
select distinct a.sno,sname,ssex
from student a,sc
where a.sno=sc.sno
and ssex='男'
use stu
exec stu_info
23.创建一个带输入参数的存储过程,能够根据参数向学生表中插入一条记录
CREATE PROCEDURE student_insert (@sno char(9),@sname
char(8),@ssex char(2),@sage int,@sdept char(4))
as
insert into student(sno, sname, ssex, sage, sdept )
values(@sno,@sname,@ssex,@sage,@sdept )
/*调用存储过程*/
EXEC student_insert '200515002','王旺','女',20,'it'
24.创建一个带输入参数的存储过程,根据不同的学生名参数,返回该学生的所有课程成绩。
USE stu
GO
CREATE PROCEDURE stu_sc2(@yx char(6))
AS SELECT DISTINCT a.sno,sname,cno,grade
FROM student a,sc
WHERE a. sno =sc.sno and sname=@yx
GO
Exec stu_sc2'张力'
25.创建一个带输入输出参数的存储过程,根据输入的系部名,统计该系学生的平均成绩并输出。
USE stu
GO
CREATE PROCEDURE PINGJUN
@stu_sdept varchar(8), @average int OUTPUT
AS
SELECT @average=avg(grade)
FROM student,sc
WHERE student.sno=sc.sno AND sdept=@stu_sdept
GO
DECLARE @G int
EXEC PINGJUN'CS', @G OUTPUT
SELECT @G
26.查看第22和23题的存储过程的有关信息,并查看它们的定义。
修改第22题的存储过程,改为查询全部女生的资料。
删除第23题的存储过程。
27.创建student表的DELETE触发器,当一个学生退学后,信息从student表中删除,触发在sc表中删除该生选课情况。
28.创建一个触发器,检查在sc表中输入一门课程成绩,必须符合在0到100分范围内。