欢迎来到天天文库
浏览记录
ID:36876863
大小:873.81 KB
页数:67页
时间:2019-05-10
《SQL语言基础及数据定义功能2》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章SQL语言基础及数据定义功能4.1SQL概述4.2SQL语言支持的数据类型4.3数据定义4.4索引4.1SQL概述SQL(StructuredQueryLanguage)是用户操作关系数据库的通用语言。SQL是集数据定义、数据查询、数据操纵和数据控制四种功能于一体的语言。SQL已经成为关系数据库的标准语言,现在所有的关系数据库管理系统都支持SQL。SQL语言是一种非过程化语言。SQL有两种使用方法,一种是以用户交互的方式联机使用,另一种是作为子语言嵌入到其他程序语言中使用。前者称为交互式SQL,
2、后者称为宿主型SQL。SQL语言的版本包括:SQL-89,SQL-92,SQL3。一、SQL的特点SQL语言之所以能够被用户接受,成为国际标准,是因为它是一个综合的、通用的、功能极强同时又简洁易学的语言。SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,充分体现了关系数据语言的特点和优点。其主要特点包括:1、一体化的特点SQL语言集DDL、DML、DCL的于一体,语言风格统一,可独立完成数据库生命周期中的全部活动,包括定义关系模式、录入数据以建立数据库、查询、更新、维护、数据库重构、数据库
3、安全性控制等一系列操作要求,这就为数据库应用系统开发提供了良好的环境。例如用户在数据库投入运行后,还可根据需要随时地逐步地修改模式,并不影响数据库的运行,从而使系统具有良好的可扩充性。2、高度非过程化非关系数据模型的数据操纵语言是面向过程的语言,用其完成某项请求,必须指定存取路径。用SQL语言进行数据操作,用户只需提出“做什么”,而不必指明“怎么做”,因此用户无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据独立性。3、面向集合的操作方
4、式SQL语言采用集合操作方式,不仅查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。非关系数据模型采用的是面向记录的操作方式,任何一个操作其对象都是一条记录。例如查询所有平均成绩在80分以上的学生姓名,用户必须说明完成该请求的具体处理过程,即如何用循环结构按照某条路径一条一条地把满足条件的学生记录读出来。4、以同一种语法结构提供两种使用方式SQL语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式,用户可以在终端键盘上直接键入SQL命令对
5、数据库进行操作。作为嵌入式语言,SQL语句能够嵌入到高级语言(例如C、COBOL、FORTRAN、PL/1)程序中,供程序员设计程序时使用。而在两种不同的使用方式下,SQL语言的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的使用方式的作法,为用户提供了极大的灵活性与方便性。5、语言简洁,易学易用SQL语言功能极强,但由于设计巧妙,语言十分简洁,完成数据定义、数据操纵、数据控制的核心功能只用了9个动词:CREATE、DROP、SELECT、INSERT、UPDATE、DELETE、GRANT
6、、REVOKE。而且SQL语言语法简单,接近英语口语,因此容易学习,容易使用。二、SQL语言的基本概念SQL语言支持关系数据库三级模式结构,如图所示。其中外模式对应于视图(View)和部分基本表(BaseTable),模式对应于基本表,内模式对应于存储文件。基本表是本身独立存在的表,在SQL中一个关系就对应一个表。一些基本表对应一个存储文件,一个表可以带若干索引,索引也存放在存储文件中。存储文件的逻辑结构组成了关系数据库的内模式。存储文件的物理文件结构是任意的。视图是从基本表或其他视图中导出的表,它本
7、身不独立存储在数据库中,也就是说数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。用户可以用SQL语言对视图和基本表进行查询。在用户眼中,视图和基本表都是关系,而存储文件对用户是透明的。4.2SQL语言支持的数据类型数值型字符串型日期时间型货币型数值型准确型整数Bigint:8字节,Int:4字节Smallint:2字节,Tinyint:1字节Bit:1位,存储1或0小数Numeric(p,q)或Decimal(p,q),其中:p为数字位长度,q:
8、小数位长度。近似型Float:8字节Real:4字节字符串型普通编码字符串类型统一字符编码字符串类型二进制字符串类型普通编码字符串类型Char(n):定长存储,n<=8000Varchar(n):不定长存储(按实际长度存储),长度最大不超过n,n<=8000注:n为字符个数Text:存储大于8000字节的文本统一字符编码字符串类型nchar(n):定长存储,n<=4000nvarchar(n):不定长存储,长度最大不超过n,n<=4000ntext:存储
此文档下载收益归作者所有