数据库基本表的定义删除与修改.doc
sql语言和查询视图详细说明

3.3.1单表查询
一、选择表中的若干列 1、查询指定
例1:查询全体学生的学号与姓名
SELECT xh,xm FROM Student <目标列表达式> 中各个列的先后顺序可以与表中的 顺序不一致。也就是说,用户在查询时可以根据应用 的需要改变列的显示顺序。
例2:查询全体学生的姓名、学号、所在系
图3.1SQL对关系数据库模式的支持
1.2 SQL的基本概念
• • • 基本表是本身独立存在的表,在SQL中一个关系就 对应一个表。一些基本表对应一个存储文件,一个 表可以带若干索引,索引也存放在存储文件中。 存储文件的逻辑结构组成了关系数据库的内模式。 存储文件的物理文件结构是任意的。 视图是从基本表或其他视图中导出的表,它本身不 独立存储在数据库中,也就是说数据库中只存放视 图的定义而不存放视图对应的数据,这些数据仍存 放在导出视图的基本表中,因此视图是一个虚表。 用户可以用SQL语言对视图和基本表进行查询。在 用户眼中,视图和基本表都是关系,而存储文件对 用户是透明的。
int,smallint,bigint,tinyint(0~255),bit(0或1)
小数 number(m,n) m位数字,其中n位为小数、 decimal 日期 Datetime、smalldatetime(精确到秒)、timestamp 字符型 char 固定长度、varchar 变长字符、text
3.2.1定义、删除与修改基本表
例2: 检查约束
create table student (xh char(10) not null ,xm char(8),xb char(2),nl tinyint,xi char(15), check (nl>0)) --创建检查约束
数据库SQL实验题目(14-15-1)

实验一数据定义操作●实验目的1.掌握数据库和表的基础知识2.掌握使用创建数据库和表的方法3.掌握数据库和表的修改、查看、删除等基本操作方法●实验内容和要求一、数据库的创建在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示:Grademanager数据库参数表二、表的创建、查看、修改和删除1.表的创建在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构特别注意:为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。
图1 设置性别的约束(2)Course表(课程名称表)的表结构(3)SC表(成绩表)的表结构特别注意:①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100②为SC表设置外键Sno和Cno的方法:右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。
按照相同的方法,将属性Sno也设置为外键。
图2为SC表设置外键Cno2.向上述表中输入如下数据记录学生关系表Student (右键单击表Student ,选择“编辑前200行”)课程关系表Course 成绩表SC3.修改表结构(找到操作的方法即可,不需要真正地修改表中的属性) (1)向student 表中增加“入学时间”列,其数据类型为日期型 (2)将student表中的sdept 字段长度改为20 (3)将student 表中的Speciality 字段删除思考题1. SQL Server 的数据库文件有几种?扩展名分别是什么? 2. 如何实现数据库的备份和还原?2.在定义基本表语句时,NOT NULL 参数的作用是什么? 3.主码可以建立在“值可以为NULL ”的列上吗?实验二 简单查询● 实验目的1. 掌握SELECT 语句的基本用法2. 使用WHERE 子句进行有条件的查询3. 掌握使用IN 和NOT IN ,BETWEEN …AND 和NOT BETWEEN …AND 来缩小查询范围的方法4. 掌握聚集函数的使用方法5. 利用LIKE 子句实现字符串匹配查询6. 利用ORDER BY 子句对查询结果排序7. 利用GROUP BY 子句对查询结果分组● 实验内容和要求一、表结构修改1.在实验一的所建立的数据库中增加Teacher 表,结构如下:2.在实验一的所建立的数据库中增加Teaching 表,表结构如下: Teaching 表(授课表)的表结构3.向上述两表中输入如下数据记录教师表Teacher 授课表Teaching二、完成下面查询 1.查询所有男生信息2.查询年龄大于24岁的女生学号和姓名3.查询所有教师的Tname、Tdept4.查询“电子商务”专业的学生姓名、性别和出生日期5.查询成绩低于90分的学生学号及课号,并按成绩降序排列6.查询Student表中所有的系名7.查询“C01”课程的开课学期8.查询成绩在80分至90之间的学生学号及课号9.统计有学生选修的课程门数10.查询成绩为77,88或99的记录11.计算“C02”课程的平均成绩12.输出有成绩的学生学号13.查询所有姓“刘”的学生信息14.统计输出各系学生的人数15.查询选修了“C03”课程和学生的学号及其成绩,查询结果按分数的降序排列16.查询各个课程号及相应的选课人数,并为选课人数取别名为“人数”17.统计每门课程的选课人数和最高分,并为选课人数和最高分分别取别名为“人数”、“最高分”18.统计每个学生的选课门数和考试总成绩,并为选课门数和总成绩分别取别名为“门数”、“总成绩”,并按选课门数降序排列。
第3章:表的创建和管理

第3章:表的创建和管理(一)3.1SQL Server 2000中的数据类型3.1.1 数字数据类型1.整数类型bigint:存储大小8个字节。
int:存储大小4个字节。
smallint:存储大小2个字节。
tinyint:存储大小1个字节。
用于存储0到255的整型数据。
bit:用于存储整数,但只能取0,1或者NULL,可以用于做逻辑运算。
2.小数类型float[(n)]:用于存储一定范围之内的浮点数,当n在1到24之间时,精度是7位,占有4个字节。
当n在25到53之间时,精度位15个有效数字,占用8个字节。
real:用于存储一定范围的浮点数,占用4个字节,相当于float(24).decimal[(p,[s])]和numeric[(p,[s])]数据类型:用于存储带小数点且数值确定的数据。
[表示数值的全部位数,取值范围为1到38,其中包括小数的位数。
但不包括小数点在内,p称为该数值的精度;s表示小数的位数。
money和smallmoney用来存储货币类型的数据,它们带有4位小数。
在money和smallmoney 类型的劣种输入货币数据时,应当在货币数据后面加一个货币符号。
输入负值时,应当在货币数据后面加上一个负号。
money占8个字节。
smallmoney占4个字节。
3.1.2 字符串类型数据1. 非Unicode字符串类型char[(n)]:是一种长度固定的非Unicode字符数据,其长度为n个字节,n必须是1到8000之间的数值。
如果没有指定n则默认为1。
varchar[(n)]:是一种长度可变的非Unicode的字符数据,其长度为n个字节,n必须是1到8000的数值。
数据的存储大小为输入数据的字节的实际长度,而不是n个字节。
如果没有定义n,则默认长度为1。
text:是一种服务器代码页中长度可变的非Unicode数据。
2. Unicode字符串类型nchar(n):是一种长度固定的Unicode字符数据,其中包含n个字符,n的值必须在1到4000之间。
2022年信阳学院计算机应用技术专业《数据库概论》科目期末试卷B(有答案)

2022年信阳学院计算机应用技术专业《数据库概论》科目期末试卷B(有答案)一、填空题1、某在SQL Server 2000数据库中有两张表:商品表(商品号,商品名,商品类别,成本价)和销售表(商品号,销售时间,销售数量,销售单价)。
用户需统计指定年份每类商品的销售总数量和销售总利润,要求只列出销售总利润最多的前三类商品的商品类别、销售总数量和销售总利润。
为了完成该统计操作,请按要求将下面的存储过程补充完整。
2、____________、____________、____________和是计算机系统中的三类安全性。
3、关系代数运算中,基本的运算是______________、______________、______________、______________和______________。
4、数据仓库主要是供决策分析用的______,所涉及的数据操作主要是______,一般情况下不进行。
5、数据库系统是利用存储在外存上其他地方的______来重建被破坏的数据库。
方法主要有两种:______和______。
6、在SQL Server 2000中,某数据库用户User在此数据库中具有对T 表数据的查询和更改权限。
现要收回User对T表的数据更改权,下述是实现该功能的语句,请补全语句。
_____UPDATE ON T FROM User;7、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和______。
8、视图是一个虚表,它是从______导出的表。
在数据库中,只存放视图的______,不存放视图对应的______。
9、SQL语言的数据定义功能包括______、______、______和______。
10、某事务从账户A转出资金并向账户B转入资金,此操作要么全做,要么全不做,为了保证该操作的完整,需要利用到事务性质中的_____性。
二、判断题11、可以用UNION将两个查询结果合并为一个查询结果。
Access数据库

第2章Access数据库基础Microsoft Access作为一种关系型数据库管理系统,是中小型信息管理系统的理想开发环境,在当前数据库领域,已有越来越多的人开始采用Access。
它是一个功能强大的数据库管理系统和MIS(Management Information System)系统开发工具,具有界面友好、易学易用、开发简单、接口灵活等特点。
本章主要介绍进行Access数据库开发所需要的基础知识。
2.1 数据库理论基础2.1.1 数据库概述数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。
当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。
通常所说的数据库系统则是指在计算机系统中引入了数据库后的系统构成,一般由数据库、数据库管理系统及其开发工具、应用系统、数据管理员和用户构成的。
2.1.2 关系型数据库简介按照数据关系模型的不同,数据库可分层次性、网状型和关系型3种类型。
其中关系型数据库是最重要的、目前应用最为广泛的数据库类型。
关系数据库早已成为发展的主流,几乎所有新推出的数据库管理系统产品都是关系型的。
关系型数据库在计算机数据管理的发展史上是一个重要的里程碑,这种数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,目前较大的信息系统都是建立在结构化数据库设计之上的。
下面我们阐述关系数据库定义和常见的关系型数据库产品。
1. 关系数据库的定义IBM公司的E.F.Codd在1976年6月发表了“关于大型共享数据库数据的关系模型”论文,首先概述了关系数据模型及其原理,并把它用于数据库系统中。
他指出,关系型数据库是指一些相关的表和其他数据库对象的集合。
这个定义表达了三部分含义。
第一,在关系数据库中,信息被存放在二维表格结构的表(Table)中,一个关系数据库包含多个数据表,每一个表又包含行(记录)和列(字段)。
SQLStructuredQueryLanguage(结构化查询语言)数据库

SQLStructuredQueryLanguage(结构化查询语⾔)数据库SQL是Structured Query Language(结构化查询语⾔)的缩写。
SQL是专为数据库⽽建⽴的操作命令集,是⼀种功能齐全的数据库语⾔。
在使⽤它时,只需要发出“做什么”的命令,“怎么做”是不⽤使⽤者考虑的。
SQL功能强⼤、简单易学、使⽤⽅便,已经成为了数据库操作的基础,并且现在⼏乎所有的数据库均⽀持SQL。
SQL数据库的数据体系结构基本上是三级结构,但使⽤术语与传统关系模型术语不同。
在SQL中,存储模式(内模式)称为“存储⽂件”(stored file);关系模式(模式)称为“基本表”(base table);⼦模式(外模式)称为“视图”(view);元组称为“⾏”(row);属性称为“列”(column)。
SQL语⾔的组成:1.⼀个SQL数据库是表(Table)的集合,它由⼀个或多个SQL模式定义。
2.⼀个SQL表由⾏集构成,⼀⾏是列的序列(集合),每列与⾏对应⼀个数据项。
3.⼀个表或者是⼀个基本表或者是⼀个视图。
基本表是实际存储在数据库的表,⽽视图是由若⼲基本表或其他视图构成的表的定义。
4.⼀个基本表可以跨⼀个或多个存储⽂件,⼀个存储⽂件也可存放⼀个或多个基本表。
每个存储⽂件与外部存储上⼀个物理⽂件对应。
5.⽤户可以⽤SQL语句对视图和基本表进⾏查询等操作。
在⽤户⾓度来看,视图和基本表是⼀样的,没有区别,都是关系(表格)。
6.SQL⽤户可以是应⽤程序,也可以是终端⽤户。
SQL语句可嵌⼊在宿主语⾔的程序中使⽤,宿主语⾔有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语⾔等。
SQL⽤户也能作为独⽴的⽤户接⼝,供交互环境下的终端⽤户使⽤。
SQL包括了所有对数据库的操作,主要是由4个部分组成:1.数据定义:这⼀部分⼜称为“SQL DDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。
VB数据库详解

数据库(DateBase)的基本概念一、概念与术语目前几乎所有的应用程序都需要存放大量的数据,这些大量数据一般都需要经过数据收集、分析后,整理成一定的组织结构,通过数据库管理系统来进行管理。
数据库管理系统提供了数据在数据库内存放方式的管理能力,使程序设计人员在使用数据库时不需要考虑数据的具体操作及数据之间的关系。
数据库是一组排列成易于处理和读取的相关信息的集合。
数据库按其模型结构可分为层次数据库、网状数据库和关系数据库。
其中关系数据库的理论发展最为完备,因此到目前为止关系数据库的应用最为广泛。
Visual Basic默认的数据库为微软的Access数据库,可在Visual Basic中利用数据库管理器直接创建,数据库文件的扩展名为.MDB。
除此之外,Visual Basic还可以处理各种外部数据库,如dBASE、FoxPro、Paradox、Btrieve、Microsoft Excel、Lotus1-2-3、Text等格式的数据库,甚至其它非关系的数据库,VB在调用这些数据时,都会自动将其转换为关系型的数据库来操作。
1.数据表(Table)数据表是一组相关联的按行与列排列的逻辑数据的集合,简称为表。
在数据库理论中常用来表示一个实体,每个数据表必须有一个表名,一个数据库一般由多个数据表组成,各个数据表之间一般应存在某种关系。
2.字段(Field)数据表中的每一列称为一个字段。
数据表是由其包含的所有字段构成的,每个字段用来描述它包含的数据。
在创建数据表时,必须为每个字段起一个名称一般称为字段名,同时需要为每个字段分配一个数据类型、最大长度和其它属性。
3.记录(Record)数据表中的每一行称为一条记录。
记录是字段值的集合,所有用户对数据的访问对象是记录,因此,如果想对某个数据项进行访问,必须首先进行记录定位,严格的说,在一个数据表中不允许存在两条完全相同的记录。
4.关键字(Keyword)如果数据表中某个字段值或若干个字段值的集合能唯一确定一条记录,则称该字段或字段的集合为该数据表的关键字。
数据库原理

《数据库原理》第一章、绪论1.四个基本概念的掌握:数据——描述事物的符号记录数据库——长期存储在计算机内的有组织,可共享的数据集合。
例如:SQLServer2000中默认的数据库master。
DBMS——位于用户与操作系统之间的一层数据管理软件。
例如:SQLServer2000,Access,Orecal 等。
数据库系统——数据库、DBMS、应用程序等有关软件、硬件及各类人员(数据库管理员和用户)。
例如:学生个人信息管理系统。
数据库系统的核心是数据库管理系统。
2.四者的关系,核心,理解P6图1.13.数据管理的三个阶段——人工管理、文件系统、数据库系统,了解每个阶段的特点4.数据库系统的特点——数据整体结构化;数据冗余度低,共享性高,易扩充;数据的物理独立性与逻辑独立性强(物理、逻辑独立性的概念,体现在那些地方);由DBMS统一管理控制的四个功能(P11四点)5.数据模型的组成要素——数据结构、数据操作、数据的完整性约束6.概念模型——实际上是现实世界到机器世界的一个中间层次(第一层抽象),表示方法——E-R图(能熟练掌握绘制方法)。
7.概念模型中的基本概念——实体、属性、码、域、实体型、实体集、联系(事物内部的联系、两个事物之间的联系【1:1,1:n,n:m】、多个事物之间的联系)P158.数据模型——层次、网状、关系(主流)9.关系模型中的概念——关系,元组,属性,码,域,分量,关系模式P2910.模式,外模式,内模式定义,有哪两种模式映像及其作用P31-P34书上习题回顾—— p.19-20 1.6.2和1.6.3(1、2题)第二章关系数据库1.关系模型的组成要素——关系数据结构(关系)、关系操作集合(选择、投影、连接、除、并、交、差等查询操作和增加、删除、修改操作,特别是某些关系操作的表达式)、关系完整性约束(后面具体介绍)2.基本概念——笛卡尔积、关系候选码、主码、主属性、非码属性、全码3.基本关系的性质——P45六点4.关系的完整性:实体完整性——规定关系中的所有主属性不能为空,而不仅是整体不能为空NULL的含义(不知道或者无意义的值)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一基本表的定义,删除与修改
一、 实验目的:
熟练掌握基本表的定义、删除与修改,为后继学习作准备。
二、 实验属性(验证性)
(1) 了解并掌握SQL SERVER 2005管理控制器的使用;
(2) 掌握基本表的定义、删除与修改。
三、 实验仪器环境与要求
1. 每人一台计算机。
2. 计算机安装有SQL SERVER2005。
四、 实验要求(预习、实验前、实验中、实验后等要求)
1. 预习教材第三章,熟悉SQL语句。
2. 熟悉SQL SERVER 2005,能使用管理控制器的使用。
3. 能够熟练使用SQL语句进行表的创建、删除与修改。
五、 实验原理
SQL语言基本应用。
六、 实验步骤:
(1) 启动SQL SERVER 2005。
(2) 启动SQL SERVER 2005查询分析器;
(3) 创建数据库”学生选课管理数据库”;
1 定义基本表
1.1、学生表Student,每个属性名的意义为Sno-学号 字符型长度为12、Sname-姓名 字
符型长度为20、Ssex-性别 字符型长度为4、Sage-年龄 为整型、Sdept-所在系 字符型长
度为15。这里要求Sno为主码,Sname不能为空值,且取值唯一。
定义语句:
首先创建数据库“学生选课管理系统”
Create database 学生选课管理系统
定义语句:
Create table student
(sno char(12) primary key,
Sname char(20) unique NOT NULL,
Ssex char(4),sage int,sdept char(15)
)
1.2、建立表课程表Course,其属性名意义分别为Cno-课程号、字符型长度为15, Cname-
课程名、字符型长度为20, Pre_Cno-先修课程号、字符型长度为15, Credits-学分、整型。
Cno为主码。
定义语句:
Create table course
(cno char(15) primary key ,
cname char(20),pre_cno char(15),credits int,
)
1.3选课表SC。其中的属性名意义分别为Sno-学号、字符型长度为12,Cno-课程号、
字符型长度为15和Grade-考试成绩、整型。Sno和Cno为主码。
定义语句:
Create table sc
(sno char(12),cno char(15),grade int,
Primary key (sno,cno)
)
1.4向创建好的各个表中每个表中至少输入5条数据。
2 修改基本表
2.1 向基本表Student中增加“入学时间”属性列,其属性名为RegisterDate,数据
类型为DATETIME型。
语句:
Alter table syudent add registerdate
2.2 将Sage(年龄)的数据类型改为SMALLINT型。
语句:
Alter table student alter column sage smallint
2.3 删除属性列RegisterDate.
语句:
Alter table student drop column RegisterDate
3 删除基本表
3.1 创建一个test表,分别有列tno,tname。
定义语句:
Create table test
(tno char(12),tname char(15),
)
3.2 删除test表。
定义语句:
Drop table test