SQL语言基础及数据定义功能
sql 基础语法

sql 基础语法
摘要:
1.SQL 简介
2.SQL 的基本语法
2.1 数据定义
2.2 数据操作
2.3 数据查询
2.4 数据控制
正文:
【1.SQL 简介】
SQL(Structured Query Language,结构化查询语言)是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
SQL 是高级的非过程化编程语言,可以使程序员忽略系统的具体实现细节,只需指定数据的存储位置和存储方式,而不需要指定具体的存储方式和存取路径。
【2.SQL 的基本语法】
SQL 的基本语法包括数据定义、数据操作、数据查询和数据控制。
【2.1 数据定义】
数据定义主要是对数据库中的表进行定义,包括表名、列名、数据类型、主键和外键等。
数据定义的常用SQL 语句有CREATE TABLE、ALTER TABLE 和DROP TABLE 等。
【2.2 数据操作】
数据操作主要是对数据库中的数据进行添加、修改和删除等操作。
数据操作的常用SQL 语句有INSERT、UPDATE 和DELETE 等。
【2.3 数据查询】
数据查询是SQL 语言中最重要的功能之一,可以查询数据库中的数据,包括SELECT 语句和子查询等。
SELECT 语句是最基本的数据查询语句,可以查询表中的所有数据或者某一列的数据,也可以使用WHERE 子句进行条件查询。
【2.4 数据控制】
数据控制主要是对数据库中的数据进行控制,包括数据的访问权限、数据的备份和恢复等。
数据控制的常用SQL 语句有GRANT、REVOKE 和BACKUP 等。
第3章 SQL语言

SELECT SNO, CNO, SCORE FROM SC WHERE CNO=‘C1’ OR CNO= ‘C2’ 利用“NOT IN”可以查询指定集合外的元组。 例11 查询没有选修C1,也没有选修C2的学生的学号、课 程号和成绩。 SELECT SNO, CNO, SCORE FROM SC WHERE CNO NOT IN(‘C1’, ‘C2’) 等价于: SELECT SNO, CNO, SCORE FROM SC WHERE CNO!=‘C1’ AND CNO!= ‘C2’
注意:函数SUM和AVG只能对数值型字段进行计算。
23
例16 求选修C1号课程的最高分、最低分及之间相差的分 数 SELECT MAX(SCORE) AS MaxScore, MIN(SCORE) AS MinScore, MAX(SCORE) - MIN(SCORE) AS Diff FROM SC WHERE (CNO = 'C1') 例17 求计算机系学生的总数 SELECT COUNT(SNO) FROM S WHERE DEPT='计算机'
1. SQL语言类似于英语的自然语言,简洁易用。 2. SQL语言是一种非过程语言,即用户只要提出“干什 么”即可,不必管具体操作过程,也不必了解数据的 存取路径,只要指明所需的数据即可。 3. SQL语言是一种面向集合的语言,每个命令的操作对 象是一个或多个关系,结果也是一个关系。 4. SQL语言既是自含式语言,又是嵌入式语言。可独立 使用,也可嵌入到宿主语言中。 自含式语言可以独立使用交互命令,适用于终端 用户、应用程序员和DBA; 嵌入式语言使其嵌入在高级语言中使用,供应用 程序员开发应用程序。
10
例1 查询全体学生的学号、姓名和年龄。 SELECT SNO, SN, AGE FROM S 例2 查询学生的全部信息。 SELECT * FROM S 用‘ * ’表示S表的全部列名,而不必逐一列出。
第6讲SQL语言基础及数据定义功能

3、简洁易用
SQL功能极强,完成核心功能只需9个动词。
表 3.1 SQL 语言的动词 SQL 功 能 数 据 查 询 数 据 定 义 数 据 操 纵 数 据 控 制 动 词 SELECT CREATE, DROP, ALTER INSERT,UPDATE DELETE GRANT,REVOKE
4、面向集合的操作方式
PRIMARY KEY ( Sno, Cno ),
FOREIGN KEY ( Sno ) REFERENCES Student ( Sno ), FOREIGN KEY ( Cno ) REFERENCES Course ( Cno ) )
二、删除表
删除表的语句格式为: DROP TABLE <表名> 例:删除test表的语句为: DROP TABLE test { [, <表名> ] „ }
课程号 Cno 1 2 3 4 5 6 7
课程名 Cname 数据库 数学 信息系统 操作系统 数据结构 数据处理 PASCAL语言
先行课 Cpno 5 1 6 7 6
学分 Ccredit 4 2 4 3 4 2 4
4、SC表数据
学号 Sno 200215121 200215121 200215121 200215122 200215122
第6讲 SQL语言基础及数据定义功能
本讲内容
1 2 3 4
SQL概述
学生课程数据库简介
SQL语言功能概述
数据定义
6.1 SQL概述
SQL(Structured Query Language)
结构化查询语言,是关系数据库的标准语言 SQL是一个通用的、功能极强的关系数据库语言 现在所有的关系数据库管理系统都支持SQL,就连 个人计算机上使用的数据库也不例外。
SQL数据库基础语法

SQL数据库基础语法SQL语句的概述SQL语⾔的分类 数据定义语⾔(Data Definition Language)主要⽤于修改、创建和删除数据库对象,其中包括CREATE ALTER DROP语句。
数据查询语⾔(Data Query Language)主要⽤于查询数据库中的数据,其主要是SELECT语句,SELECT语句包括五个⼦句,分别是FROM WHERE HAVING GROUP BY和WITH语句。
数据操作语⾔(Data Manipulation Language)主要⽤于更新数据库⾥数据表中的数据,包括INSERT UODATE DELETE语句。
数据控制语⾔(Data Control Language)主要⽤于授予和回收访问数据库的某种权限。
包括GRANT REVOKE等语句。
事物控制语⾔,主要⽤于数据库对事物的控制,保证数据库中数据的⼀致性,包括COMMIT ROLLBACK语句。
常⽤的数据类型 MYSQL: SQL语句的书写规范 SQL语句中不区分关键字的⼤⼩写 SQL语句中不区分列名和对象名的⼤⼩写 SQL语句对数据库中数据的⼤⼩写敏感 SQL语句中使⽤--注释时,--后⾯⾄少有⼀个空格,多⾏注释⽤/* */ 数据库的创建与删除 (1)数据库的创建: CREATE DATABASE database_name; 在中书写SQL语句时,在SQL语句后⾯都要加上分号 (2)数据库的删除 DROP DATABASE database_name;数据表的创建与更新 数据库中的表 (1)数据记录:在数据表中的每⼀⾏被称为数据记录 (2)字段:数据表中的每⼀列被称为字段 (3)主键(PRIMARY KEY):作为数据表中唯⼀的表⽰,保证了每⼀天数记录的唯⼀性。
逐渐在关系数据库中约束实体完整性。
所谓实体完整性,是指对数据表⾏的约束。
(4)外键(FOREIGN KEY):外键⽤来定义表与表之间的关系。
数据库第4章 SQL语言基础及数据定义功能

第4章SQL语言基础及数据定义功能用户使用数据库时需要对数据库进行各种各样的操作,如查询数据,添加、删除和修改数据,定义、修改数据模式等。
DBMS必须为用户提供相应的命令或语言,这就构成了用户和数据库的接口。
接口的好坏会直接影响用户对数据库的接受程度。
数据库所提供的语言一般局限于对数据库的操作,它不是完备的程序设计语言,也不能独立地用来编写应用程序。
SQL(Structured Query Language,结构化查询语言)是用户操作关系数据库的通用语言。
虽然叫结构化查询语言,而且查询操作确实是数据库中的主要操作,但并不是说SQL只支持查询操作,它实际上包含数据定义、数据查询、数据操作和数据控制等与数据库有关的全部功能。
SQL已经成为关系数据库的标准语言,所以现在所有的关系数据库管理系统都支持SQL。
本章将主要介绍SQL语言支持的数据类型以及定义基本表和索引的功能。
4.1 SQL语言概述SQL语言是操作关系数据库的标准语言,本节介绍SQL语言的发展过程、特点以及主要功能。
4.1.1 SQL语言的发展最早的SQL原型是IBM的研究人员在20世纪70年代开发的,该原型被命名为SEQUEL (Structured English QUEry Language)。
现在许多人仍将在这个原型之后推出的SQL语言发音为“sequel”,但根据ANSI SQL委员会的规定,其正式发音应该是“ess cue ell”。
随着SQL语言的颁布,各数据库厂商纷纷在其产品中引入并支持SQL语言,尽管绝大多数产品对SQL语言的支持大部分是相似的,但它们之间还是存在一定的差异,这些差异不利于初学者的学习。
因此,我们在本章介绍SQL时主要介绍标准的SQL语言,我们将其称为基本SQL。
从20世纪80年代以来,SQL就一直是关系数据库管理系统(RDBMS)的标准语言。
最早的SQL标准是1986年10月由美国ANSI(American National Standards Institute)颁布的。
初学者必读的SQL数据库基础教程

初学者必读的SQL数据库基础教程SQL数据库是一种常用的数据库管理系统,广泛应用于各种软件开发和数据管理领域。
对于初学者来说,掌握SQL数据库的基础知识是非常重要的。
本文将从数据定义语言、数据操作语言、数据查询语言和数据控制语言等方面,为初学者提供一份必读的SQL数据库基础教程。
第一章数据定义语言(DDL)数据定义语言(DDL)是SQL数据库中用来定义数据库结构的语言。
它包括创建、修改和删除数据库、表、列以及其他对象的操作。
在SQL中,创建数据库使用CREATE DATABASE语句,创建表使用CREATE TABLE语句,修改表结构使用ALTER TABLE语句,删除表使用DROP TABLE语句等。
初学者在学习时应该了解这些常用的DDL语句,并能够正确地使用它们。
第二章数据操作语言(DML)数据操作语言(DML)是SQL数据库中用来对数据库中的数据进行操作的语言。
它包括插入、更新和删除数据的操作。
在SQL中,插入数据使用INSERT INTO语句,更新数据使用UPDATE语句,删除数据使用DELETE FROM语句等。
初学者需要熟悉这些基本的DML语句,并能够通过它们来操作数据库中的数据。
第三章数据查询语言(DQL)数据查询语言(DQL)是SQL数据库中用来查询数据库中的数据的语言。
它包括SELECT语句和一些用于过滤、排序和聚合数据的函数。
初学者需要掌握SELECT语句的基本用法,了解如何使用WHERE子句进行条件过滤,如何使用ORDER BY子句进行排序,以及如何使用GROUP BY子句进行数据聚合。
第四章数据控制语言(DCL)数据控制语言(DCL)是SQL数据库中用来控制数据库访问权限和事务处理的语言。
它包括GRANT和REVOKE语句用于授权和撤销权限,以及BEGIN TRANSACTION、COMMIT和ROLLBACK语句用于管理事务。
初学者需要了解如何使用DCL语句来管理数据库的安全性和事务一致性。
SQL的数据定义功能

• ቤተ መጻሕፍቲ ባይዱ如:ALTER TABLE S ADD ADDRESS CHAR(30);
该例为S表增加了一个ADDRESS(地址)列。
尽管SQL提供了为一个表增加一列的语句, 它并没有提供删除表的列、改变列名或改变列 的数据类型的语句。因此,如果要这么做,那 就必须生成一个新的表。
1.1 基本表的定义、修改和删除
• 视图名是要定义的视图的名字,同表名一样,要经 常用到。
• 语句中的SELECT语句作为子查询将以虚拟表的形 式得出结果。SELECT子查询中不能使用ORDER BY子句,也不能包含UNION(合并有类似结构的 表的关系代数并操作符)操作,子句FROM <表名 >中的表名既可以是表,也可以是视图,即视图既 可以根据表,也可以根据其他视图来定义。
数据。 • 视图机制对机密数据提供了自动的安全保护功能。
1.3 索引
• 索引是关系数据库非常重要的部分。它们被用作包含所关心 数据的表指针。通过一个索引,能从表中直接找到一个特定 的记录,而不必连续顺序地扫描这个表,一次一个记录地去 查找。对于大的表来说,索引是必要的。没有索引,要想得 到一个结果可能要等好几个小时、好几天,而不是几秒钟时 间。
1.1 基本表的定义、修改和删除
• 定义基本表的语句格式 CREATE TABLE <表名>(<列名1> < 数据类型1> [NOT NULL] [,<列名2> <数据类型2> [NOT NULL]……])
[其他参数];
其中CREATE TABLE后跟要定义的表 的名称,列名和数据类型中给出表的逻辑 数据结构定义,即表中的列命名、数据类 型选择并给出是否允许空值。各列名信息 之间用逗号相隔,列名与类型说明之间、 类型说明与是否允许空值之间用空格相隔。 任选项“其他参数”与具体系统有关,这 里不作说明。
SQL语言-数据类型+数据定义

例4.15 给book_manage 数据库中添加一个数据文件。 alter database book_manage add file ( name = book_manage_second, filename="c:\mydatabase\newfile.sdf" ) 例4.15 删除book_manage 数据库中的次要数据文件 alter database book_manage remove file book现方式做保护处理对用户上传分享的文档内容本身不做任何修改或编辑并不能对任何下载内容负责
第4讲 SQL语言
4.1 SQL概述 (P21教材2.1-2.2)
4.1 SQL概述
• SQL(Structured Query Language)
结构化查询语言,是关系数据库的标准语言
MAXSIZE:指定 文件可以增长到的最大大小。 可以使用千字节 (KB)、兆字节 (MB)、千兆字节 (GB) 或兆兆字节 (TB) 为单位。默认为 MB。指定一个整 数,不要包含小数位。如果没有指定 max_size,那么 文件将增长到磁盘变满为止。 UNLIMITED:指定文件将增长无上限,到磁盘变满 为止。
1.创建及修改数据库 (1) 创建新数据库 基本语法如下: CREATE DATABASE database_name [ ON [ PRIMARY ] [< filespec > [ ,...n ] ] ] [ LOG ON { < filespec > [ ,...n ] } ] 其中< filespec > 语法如下:
(2) 用系统存储过程显示数据库结构 可以使用系统提供的系统存储过程sp_helpdb 来显示 数据库信息,其语法如下: sp_helpdb [[@dbname=] 'name']
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Smalldatetime
货币类型
货币数据类型表示货币值。货币数据存储的精确度固定为四位小数, 实际上货币类型的数据都是有4位小数的decimal类型的数据。
数据类型
money
说明
8字节,存储的货币数据值介于–263 (– 922,337,203,685,477.5808) 与 263-1 (+922,337,203,685,477.5807) 之间, 精确到货币单位的千分之十。最多可以 包含19位数字
Smallmoney 4字节,存储的货币数据值介于 – 214,748.3648 与 +214,748.3647 之间, 精确到货币单位的千分之十
图书编号
书名 图书
…
单价
m
销售时间
销售
销售数量
n
书店 书店编号 店名 电话
…
SQL Server 2000常用工具简介
企业管理器
SQL Server企业管理器(Enterprise Manager)是SQL Server 2000 的主要管理工具,它提供了一个遵从Microsoft 管理控制台 (MMC) 的用户界面。 在企业管理器中可以完成几乎所有的管理工作。如:管理 登录账号、数据库用户和权限,创建和管理数据库,创建和管 理表、视图、存储过程和用户自己定义的数据类型等。
一、SQL标准的发展
标准
SQL/86 SQL/89 (FIPS 127-1) SQL/92 (SQL2) SQL99 (SQL3) SQL2003
发布日期
1986.10 1989年 1992年 1999年 2003年
SQL功能极强,完成核心功能只用了9个动词。
表 3.1 SQL 语言的动词 SQL 功 能 数 据 查 询 数 据 定 义 数 据 操 纵 数 据 控 制 动 词 SELECT CREATE, DROP, ALTER INSERT,UPDATE DELETE GRANT,REVOKE
查询分析器
SQL查询分析器(Query Analyaer)是一个图形化的查询工 具,用于以文本的方式编辑Transact-SQL语句,然后发送给服 务器,并接受执行的结果。使用这个工具,用户可以交互地设 计和测试Transact-SQL语句、批处理和脚本。
第三章 SQL语言基础及数据定义功能
3.1 SQL概述
近似型 :近似型用于表示浮点型数据的近似数据类型。
数据类型 float
说明 8字节,存储从 –1.79E + 308 到 1.79E + 308 范围的浮点型数 4字节,存储从 –3.40E + 38 到 3.40E + 38 范围的浮点型数
real
字符串型
普通字符编码和统一字符编码(所有字符均双字节)。 数据类型 char(n) varchar (n) text nchar (n) 说明 固定长度的字符串类型,n表示字符串的最大长度, 取值范围为1~8000 可变长度的字符串类型,n表示字符串的最大长度, 取值范围为1~8000 可存储231-1 (2,147,483,647) 个字符的大文本 固定长度的 Unicode 数据,n表示字符串的最大 长度,取值范围为1~4000
nvarchar(n) 可变长度的 Unicode 数据,n表示字符串的最大 长度,取值范围为1~4000
数据类型 ntext
binary (n) varbinary(n) image
说明 最多可存储230-1 (1,073,741,823) 个字符的统一字 符编码文本
固定长度的二进制字符数据,n表示最大长度,取值 范围为1~8000 可变长度的二进制字符数据,n的取值范围为1~8000 大容量的、可变长度的二进制字符数据,可以存储多 种格式的文件,如:Word、Excel、BMP、GIF和JPEG 文件数据等。最多可存储231-1 (2,147,483,647) 个 字节,约为2GB
3.2 数据类型
3.3 数据定义
3.4 SQL的特点
3.1
SQL概述
ቤተ መጻሕፍቲ ባይዱ
SQL(Structured Query Language,结构化查询语言)是用户操作关系数 据库的通用语言。
包括数据的定义、数据查询、数据操纵和数据控制等与数据库有关的全
部功能,以查询为主。
数据库所提供的语言一般局限于对数据库的操作,它不是完备的程序设 计语言,也不能独立的编制应用程序。
日期时间类型
SQL Server的日期时间数据类型是将日期和时间合起来存储,它没有
单独存储的日期和时间类型。
数据类型 Datetime
说明 占用8字节空间,存储从1753年1月1 日到9999年12月31日的日期和时间 数据,精确到百分之三秒(或 3.33 毫秒) 占用4字节空间,存储从1900年1月1 日到2079年6月6日的日期和时间数 据,精确到分钟
数据类型 Bigint Int Smallint Tinyint Bit numeric(p,q)或 decimal(p,q) 说明 8字节,存储从–263 (– 9223372036854775808) 到 263-1 (9223372036854775807) 范围的整数 4字节,存储从–231(–2,147,483,648 ) 到231-1 ( 2,147,483,647 ) 范围的整数 2字节,存储从–215(–32,768 ) 到215-1 (32,767 ) 范围的整数 存储从 0 到 255 之间的整数 存储1或0 定点精度和小数位数。使用最大精度时,有效值从 –1038 +1 到 1038 -1。其中,p为精度,指定小数 点左边和右边可以存储的十进制数字的最大个数。q 为小数位数,指定小数点右边可以存储的十进制数 字的最大个数,0 ≤ q ≤ p。q的默认值为0
二、SQL的基本概念
SQL支持关系数据库三级模式结构
SQL
视图1
视图2
外模式
基本表1
基本表2
基本表3
基本表4
模式
存储文件1
存储文件2
内模式
3.2 SQL的数据类型
3.2.1 3.2.2 3.2.3 3.2.4
数值型 字符串型 日期时间类型 货币类型
数值型
准确型:指在计算机中能够精确存储的数据。