小克上传第五章 结构化查询语言SQL

合集下载

第五章 结构化查询语言SQL

第五章 结构化查询语言SQL

第5章关系数据库的结构化查询语言SQL本章介绍关系数据库标准语言SQL。

主要内容包括:数据定义、数据操纵、数据控制和数据约束等。

(1)SQL数据库的体系结构,SQL的组成。

(2)SQL的数据定义:SQL模式、基本表和索引的创建和撤销。

(3)SQL的数据查询:SELECT语句的句法,SELECT语句的几种形式及各种限定,基本表的联接操作。

(4)SQL的数据更新:插入、删除和修改语句。

(5)视图的创建和撤消,对视图更新操作的限制。

(6)嵌入式SQL:预处理方式,使用规定,使用技术,卷游标,动态SQL语句。

5.1 SQL概述1)SQL的发展历程SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统System R上实现。

1986年10月,经美国国家标准局(ANSI)的数据库委员会批准了SQL作为关系数据库语言的美国标准,并公布了标准SQL文本。

1987年6月国际标准化组织(ISO)将其采纳为国际标准,称为“SQL86”。

相继出现了“SQL89”、“SQL2(SQL92)”、“SQL3”。

SQL已成为关系数据库领域中的一个主流语言:首先,各个数据库产品厂家纷纷推出了自己的支持SQL的软件或与SQL 接口的软件。

其次,SQL在数据库以外的其他领域也受到了重视。

不少软件产品将SQL的数据检索功能与面向对象技术、图形技术、软件工程工具、软件开发工具、人工智能语言等相结合,开发出功能更强的软件产品。

2)SQL 数据库的体系结构SQL 数据库的体系结构的特征:一个SQL 模式是表和约束的集合。

一个表(TABLE )是行的集合。

每行是列的序列,每列对应一个数据项。

一个表可以是一个基本表,也可以是一个视图。

一个基本表可以跨一个或多个存储文件,一个存储文件也可存储一个或多个基本表。

用户可以用SQL 语句对视图和基本表进行查询等操作。

SQL 用户可以是应用程序,也可以是终端用户。

第五章结构化查询语言SQL

第五章结构化查询语言SQL
个数据表的名称之间用逗号隔开,在WHERE短语中必须指 定数据表之间进行的连接条件。
现在学习的是第16页,共88页
5.2.2 简单连接查询
在连接查询中引用两个表的公共字段时
1.等值连接
,须在公共字段名前添加表名或表别名 作为前缀,否则系统会提
对于等值连接,连接条件通常是两示个出数错据。表对的于公只共在字一段个的数值据相表等中。出现的
表指定别名,格式为<关系名>. <别名>,
指定别名后,在引用该数据表的字段时,应
以别名作为数据表的前缀。
现在学习的是第17页,共88页
5.2.2 简单连接查询
1.等值连接
例5.13 查询上官小梅所学课程的课程名及其对应的成绩 select 姓名,课程名,成绩 from student s,course c,grade g
结果全部合并;
现在学习的是第8页,共88页
5.2 数据查询
ORDER By<排序项> [ASC|DESC]:ORDER BY子句指定 按哪个字段对查询结果排序,ASC为升序, DESC为降序;
现在学习的是第9页,共88页
Destination可5以.是2 下数列据三种查子询句之一
[INTO Destination]:指定在何处保存查询结果。如果在同 一个查询中同时包含了INTO子句和TO子句,则TO子句不起
名>] ···]
[WHERE <连接条件> [AND <连接条件···]
[AND|OR<过滤条件> [AND |OR <过滤条件> ···]]]
[GROUP By <分组列> [,<分组列···]][HAVING <过滤条件>]

第5章 结构化查询语言SQL

第5章 结构化查询语言SQL
[, PRIMARY KEY 表达式 TAG 索引名 |UNIQUE 表达式 TAG 索引名 表达式2 索引名2 表达式3 索引名3]
[, FOREIGN KEY 表达式 TAG 索引名 表达式4 索引名4] [REFERENCES 表名 [TAG 索引名 表名3 索引名5]] [, CHECK 逻辑表达式 [ERROR字符表达式 逻辑表达式2 字符表达式2]]) 字符表达式
5.2.2 表结构的修改
1.格式1 .格式 格式: 格式: ALTER TABLE 表名 ADD | ALTER [COLUMN] 表名1 字段名1 字段类型[(字段宽度 ,小数位数])] 字段名 字段类型 字段宽度 [,小数位数 [NULL | NOT NULL]] [CHECK 逻辑表达式 [ERROR 字符表达式 逻辑表达式1 字符表达式1]] [DEFAULT表达式 ; 表达式1]; 表达式 [PRIMARY KEY | UNIQUE]; ; [REFERENCES 表名 [TAG 索引名 表名2 索引名1]] 功能:此命令可分成两种形式,各有各的功能。 功能:此命令可分成两种形式,各有各的功能。 选用ADD关键字是为表增加新字段。 关键字是为表增加新字段。 选用 关键字是为表增加新字段 选用Alter关键字,对表中的某字段的类型、宽度、有 关键字, 选用 关键字 对表中的某字段的类型、宽度、 效性规则等进行修改。 效性规则等进行修改。
成绩表1(在学生管理数据库中 【例5-4】创建数据库表 成绩表 在学生管理数据库中 】创建数据库表:成绩表 在学生管理数据库中) 并建立与学生表3的永久关系 并建立与学生表 的永久关系 Create table 成绩表 ; 成绩表1 ( 学生证号 C(10) references 学生表 ; 学生表3, 课程编号 C(5), 期末成绩 N(6,2), 学分 N(1))

数据库系统及应用第5章 结构化查询语言SQL

数据库系统及应用第5章 结构化查询语言SQL
输入SQL 命令对数据库进行操作;另一种是程序嵌入方式,即在程序设计时将 SQL 语句嵌 入到高级语言程序中,运行程序时自动执行 SQL 语句序列。
5.1 SQL概述
1.SQL简介
SQL功能 数据定义 数据查询 数据操纵 数据控制
命令动词 CREATE、ALTER、DROP SELECT INSERT、DELETE、UPDATE GRANT、REVOKE
国标准。1987年,国际标准化组织(ISO)将其采纳为国际标准,并推荐它为关系型数据 库的标准操纵语言。该标准在1989年稍加扩充,通常被称为“SQL89”或“SQL1”,它 是许多商用关系数据库软件的基础。
5.1 SQL概述
1.SQL简介
SQL 语言具有以下特点。 (1)SQL 语言是一种介于关系代数和关系演算之间的语言,是一种一体化的语言。
(<字段名1> <字段类型> [ (字段宽度 [,<小数位数> ] ) ] [ NULL] [ NOTNULL ] [ CHECK <逻辑表达式1> [ ERROR <出错信息1> ] ] [AUTOINC [ NEXTVALUE <下一值> [STEP <步长>] ] ] [ DEFAULT <表达式1> ]
5.1 SQL概述
2.Visual FoxPro对SQL的支持
Visual FoxPro 支持 SQL 语言的数据定义、数据查询和数据操纵功能,但在具体实现 方面也存在一些差异。另外,由于 Visual FoxPro 自身在安全控制方面的缺陷,所以它没
有提供数据控制功能。
在 Visual FoxPro 中,用户可以使用以下几种方式执行 SQL 语句或命令。 (1)在命令窗口直接输入 SQL 命令。 (2)在程序中嵌入 SQL 语句。

第5章结构化查询语言

第5章结构化查询语言

第5章结构化查询语言结构化查询语言(SQL,Structured Query Language)是一种用于管理关系型数据库的标准化语言,也是数据库操作的基础。

SQL可以实现数据库的创建、查询、插入、更新和删除等操作,可以对数据库中的表、视图等进行管理和操作。

SQL语言包括数据定义语言(DDL)、数据操纵语言(DML)、数据查询语言(DQL)和事务控制语言(TCL)等几个方面。

数据定义语言(DDL)用于定义、修改和删除数据库对象,包括创建数据库(CREATEDATABASE)、创建表(CREATETABLE)、修改表结构(ALTERTABLE)和删除表(DROPTABLE)等。

数据操纵语言(DML)用于对数据库中的数据进行操作,包括插入数据(INSERT)、更新数据(UPDATE)和删除数据(DELETE)等。

数据查询语言(DQL)用于从数据库中查询数据,SQL语句的核心部分,可以实现复杂的数据查询和数据过滤。

常见的查询语句包括SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY等。

事务控制语言(TCL)用于控制数据库中的事务,包括BEGINTRANSACTION、COMMIT、ROLLBACK等。

通过TCL语句可以确保数据库的操作具有原子性、一致性、隔离性和持久性(ACID特性)。

SQL语言的特点有以下几个方面:1.简单易学:SQL语言的语法相对简单,易于学习和使用。

2.高效可靠:SQL语言是标准化的数据库操作语言,可以高效地对数据库进行管理和操作。

3.跨平台性:SQL语言是一种通用的数据库操作语言,可以在不同的平台和数据库系统上使用。

4.强大灵活:SQL语言可以实现复杂的数据查询和处理,支持多表联合查询、条件查询、分组统计等功能。

SQL语言在现代数据库管理系统中得到了广泛的应用,是数据库开发和管理中非常重要的一部分。

掌握SQL语言可以更好地进行数据库设计、数据管理和数据分析等工作。

第 5 章 复习 SQL(结构化查询语言)

第 5 章  复习 SQL(结构化查询语言)

在T_SQL中,连接查询有两大类表示 形式,一是符合SQL标准连接谓词表示形 式,二是T_SQL扩展使用关键字JOIN的表 示形式。
① 指定每个表中要用于连接的列。典型的 连接条件在一个表中指定外键,在另一个 表中指定与其关联的键。 ② 指定比较各列的值时要使用的逻辑运算 符,如“=、< >”等。
[^]
BDTWEEN„AND IS NULL
LIKE
IN EXISห้องสมุดไป่ตู้S
模式匹配,字符串匹配操作符
检查一个字段值是否属于一组值之中 检查某一个字段值是否有值,实际上,EXISTS是IS NULL的反义词
4.练习
列出性别为女的学生姓名、家庭住址 SELECT student_name, address FROM student_info WHERE student_sex='女'
SQL查询
函数及统计
分组排序
连接 子查询
5.6 基于多表的连接查询
在关系型数据库中,将一个查询同时 涉及两个或两个以上的表,称为连接查询。 基于多表的查询是通过所谓的连接查 询来完成的。连接是根据各个表之间的逻 辑关系从两个或多个表中查询数据,结果 通常是含有参加连接运算的两个表(或多 个表)的指定列的表。
列出1980年以后出生的学生的情况 SELECT * FROM student_info WHERE born_date >'1980-12-31'
列出所有家住“武汉市”的男学生姓名、电 话号码和家庭住址
SELECT student_name, tele_number, student_sex, address FROM student_info WHERE substring(address,1,3)='武汉市' AND student_sex='男'

第5章SQL结构化查询语言

第5章SQL结构化查询语言

5.2 SELECT查询语句
5.2.1 查询分析器 5.2.2 查询语句格式 5.2.3关于演示数据库的说明
Find Information Using SQL Language
5.2.1 查询分析器
在SQL查询分析器中,既可在全文窗口中输入TransactSQL语句,也可以打开包含Transact-SQL语句的文本 文件,执行语句并在结果窗口中,查看结果。
SELECT bookname,
year(getdate())-year(publishdate) as 出版年数
FROM book
Find Information Using SQL Language
使用DISTINCT短语消除重复的记录
DISTINCT短语能够从结果表中去掉重复的记 录。
【例5-6】查询所有图书所属的出版社。
SELECT bookid AS 书号,bookname 书名,出版社=publish FROM book
Find Information Using SQL Language
显示表达式的值
在SELECT语句后面可以是字段表达式,字 段表达式不仅可以是算术表达式,还可以是 字符串常量、函数等。
【例5-5】 显示BOOK表中所有书名和出版年数。
使用单引号加入字符串
在SELECT语句中,可以在一个字段的前面加上一个单引 号字符串,称为虚拟列名,对后面的字段起说明作用。
【例5-3】显示BOOK表中书名、出版社、价格。 SELECT ’书名’, bookname ,’出版社,’publish,price FROM book
Find Information Using SQL Language
Find Information Using SQL Language

第5章SQL结构化查询语言

第5章SQL结构化查询语言

第5章SQL结构化查询语言SQL(Structured Query Language)是一种用于管理和操作关系型数据库的语言。

它是一种标准化的查询语言,用于从数据库中检索和操作数据。

本章将介绍SQL的基本语法和常用命令,以及如何使用它进行数据查询、插入、更新和删除。

1.SQL语法SQL语法由关键字、函数、操作符和参数组成。

SQL语句通常以分号结尾,并且可以写在一行或多行中。

常见的SQL语句包括:- SELECT语句:用于从数据库中检索数据。

例如:SELECT * FROM table_name;- INSERT语句:用于向数据库中插入新的数据。

例如:INSERT INTO table_name (column1, column2) VALUES (value1, value2);- UPDATE语句:用于更新数据库中的数据。

例如:UPDATEtable_name SET column_name = new_value WHERE condition;- DELETE语句:用于从数据库中删除数据。

例如:DELETE FROM table_name WHERE condition;2.数据查询使用SELECT语句可以从数据库中检索数据。

可以使用通配符*检索所有列,或者指定要检索的列名。

例如,SELECT * FROM customers; 将检索customers表中的所有数据。

可以使用WHERE子句来添加过滤条件,例如:SELECT * FROM customers WHERE age > 18; 将检索年龄大于18的顾客数据。

3.数据插入使用INSERT语句可以向数据库中插入新的数据。

插入数据需要指定插入的表名和要插入的数据的列和值。

例如,INSERT INTO customers (name, age) VALUES ('John', 25); 将向customers表中插入一条名为John,年龄为25的新数据。

第5章结构化查询语言SQL

第5章结构化查询语言SQL

数据库系统及应用
第5章 结构化查询语言SQL
基本表的创建、 2.基本表的创建、修改和删除 DATABASE建立的数据库是一个空的数据库 建立的数据库是一个空的数据库, 用CREATE DATABASE建立的数据库是一个空的数据库,接下来应该在 这个数据库中建立表。 这个数据库中建立表。 (1)创建基本表 表的创建既可以通过表设计器或Visual FoxPro的新建表命令实现 的新建表命令实现, 表的创建既可以通过表设计器或Visual FoxPro的新建表命令实现, 也可以使用SQL中的相应命令创建。 SQL中的相应命令创建 也可以使用SQL中的相应命令创建。 命令格式: <表名 [FREE]( 字段名1> <字段类 表名> 命令格式:CREATE TABLE|DBF <表名> [FREE](<字段名1> <字段类 <(宽度[,<小数位数>])>[,<字段名 <字段类型 <(宽度[,<小 宽度[,<小数位数>])>[,<字段名2> 字段类型> 宽度[,< 型> <(宽度[,<小数位数>])>[,<字段名2> <字段类型> <(宽度[,<小 数位数>])>, >])>,…]) 数位数>])>, ]) 功能:建立一个由<表名>指定的表结构。 功能:建立一个由<表名>指定的表结构。 说明: 说明: 表名> 指定要创建的表的名称。 ①<表名>:指定要创建的表的名称。 FREE:指定创建的表是一个自由表,不被添加到数据库中。 ②FREE:指定创建的表是一个自由表,不被添加到数据库中。 字段名1> <字段类型 <(宽度[,<小数位数>]): 字段类型> 宽度[,<小数位数>]) ③<字段名1> <字段类型> <(宽度[,<小数位数>]):指定相应字段的 名称、类型、宽度及小数位数。 名称、类型、宽度及小数位数。

第 5 章 SQL(结构化查询语言)

第 5 章  SQL(结构化查询语言)

2.数据处理语言(Data Manipulation Language,DML)
SQL语法中处理数据语言称为DML。 例如,使用SELECT(数据查询语句)查 询表中的内容,或者使用INSERT(插入 语句)、DELETE(删除语句)和 UPDATE(更新语句)插入、修改和更新 一笔记录等,这些语句属于DML。
SELECT student_id,student_name, student_sex FROM student_info WHERE class_no NOT IN (200001,200002)
LIKE关键字用于指出一个字符串是否 与指定的字符串相匹配,其运算对象可以 是char、text、datetime和smalldatetime等 类型的数据,返回逻辑值TRUE或FALSE。 LIKE关键字表达式的格式为: 字符表达式1 [NOT] LIKE 字符表达式2
SQL是应用于数据库的语言,本身是 不能独立存在的。
5.1.2 SQL的分类
SQL按照用途可以分为如下3类。
1.数据定义语言(Data Definition Language,DDL)
类似于这一类定义数据库对象的SQL 叙述即为DDL语言。例如,数据库创建语 句(CREATE DATA)和表创建语句 (CREATE TABLE)等。
图5-5
【例5-2】的显示结果
SELECT student_name,'家庭住址', address FROM student_info
图5-6
【例5-3】的显示结果
5.3.4 使用别名
在显示结果时,可以指定以别名代替 原来的字段名称,共有3种方法: 采用“字段名称 AS 别名”的格式; 采用“字段名称 别名”的格式; 采用“别名=字段名称”的格式。

数据库系统及应用第5章 结构化查询语言SQL

数据库系统及应用第5章 结构化查询语言SQL
和删除数据表
数据表的创建 建立表间永久关系
SQL的数据查询
掌握SELECT语句的格式,能使用该语句实现简单 查询、嵌套查询、连接查询、分组与计算查询
查询与统计
掌握INSERT、DELETE和UPDATE语句的格式, SQL的数据操纵 能使用这些语句实现数据表记录的添加、删除和
更新
表的基本操作
数据库系统及应用
[ PRIMARY KEY | UNIQUE ] [ REFERENCES <表名2> [ TAG <标识名1> ] ] 功能:用于添加一个新的字段或者修改一个已有的字段。 说明: (1)ADD子命令用于添加一个新的字段,ALTER子命令用于修改 一个已有的字段。 (2)使用该命令可以修改字段的类型、宽度、有效性规则、出错信 息、默认值,定义主关键字和关系等,但不能修改字段名,其选择项的 功能及用法与CREATE TABLE命令相似。
数据库系统及应用
5.1 SQL概述
1
SQL简介
SQL命令动词
SQL功能 数据定义 数据查询 数据操纵 数据控制
命令动词 CREATE、ALTER、DROP
SELECT INSERT、DELETE、UPDATE
GRANT、REVOKE
数据库系统及应用
5.1 SQL概述
2 Visual FoxPro对SQL的支持
在Visual FoxPro中,用户可以使用以下几种方式执行SQL语句或 命令。
(1)在命令窗口直接输入SQL命令。 (2)在程序中嵌入SQL语句。 (3)在“视图设计器”中使用入SQL语句。 (4)在控件的属性设置中使用SQL语句。 (5)在控件的事件过程代码中嵌入SQL语句。
数据库系统及应用

第5章-SQL结构化查询语言

第5章-SQL结构化查询语言

第 5 章 SQL 结构化查询语言5.1 SQL 语言简介SQL ( Structured Query Language 结构化查询语言)语言的核心是数据查询,在标准化过程中不断成为通用的数据库语言。

5.1.1 SQL 语言特点( 1)高度集成化: SQL 语言在数据定义、 数据操纵、 数据查询和数据控制方面都有规范的格式。

可以独立完成数据库管理的各项工作。

(2)非过程化语言:它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放 方式,只需告诉要做什么,系统就可以自动完成。

(3) 集合操作:SQL 语言的的操作对象和操作结果都是记录集合,这种集合特性允许一条 SQL 语句的输岀作为另一条 SQL 语句的输入,SQL 语句可以嵌套。

(4) 简单易学:SQL 语言语句不多,语言接近英语自然语言。

在多数情况下,在其他语言中需 要一大段程序实现的功能只需要一个SQL 语句就可以达到目的。

(5) 用法灵活:SQL 语言可以在数据库管理中直接应用,可以嵌入其它高级程序设计语言中, 完成对数据库的操作。

5.1.2 SQL 语句组成 SQL 语言包含4个部分:CREATE (创建)、DROP (撤掉)、ALTER (更改)。

INSERT (插入)、UPDATE (更新)、DELETE (删除) SELECT (选择)。

GRANT (授予)、REVOKE (吊销)、COMMIT (提交)、ROLLBACK ;回滚)本章主要讲 ACCESS 2003中所支持的 SQL 语句5.1.3 SQL 语句在 ACCESS^的使用方法使用SQL 语句的步骤如下: 打开数据库窗口,进入查询设计器。

关闭显示表窗口,执行菜单“查询 |SQL 特定查询 | 数据定义”命令。

在打开的查询设计编辑窗口中,输入SQL 语句。

单击工具栏上的执行按钮,可以直接执行查询。

保存查询,单击工具栏上的保存按钮,在弹岀的对话框中命名查询。

第5章 标准结构化查询语言SQL

第5章 标准结构化查询语言SQL
SELECT 专业 FROM STUDENT SELECT DISTINCT 专业 FROM STUDENT 注意比较这两个语句的区别
5.3 SQL数据查询
(3)查询列中含有算术运算的表达式
SELECT子句的目标列中可以包含带有+、-、×、/的算术运算表达式。
[例5-10] 查询所有学生的学号,姓名和年龄。 SELECT 学号, 姓名, 2013-year(出生日期) FROM 说明:可以为列标题设置别名。
SELECT 学号 FROM 等价于 SELECT 学号 FROM SCORE WHERE 成绩 BETWEEN 85 成绩 >= AND 95 95
SCORE WHERE
85 AND 成绩 <=
5.3 SQL数据查询
练习: 1、查询xs.dbf计算机专业男生的xm、 zy和 csrq。
2、查询zg.dbf基本工资在800—1000之间的职工xm及bm.
[例5-14] 查询score.dbf选修了1001号课程且考试及格的学生学号和成绩。 SELECT 学号, 成绩 FROM SCORE WHERE 课程号='1001' AND 成绩>=60
5.3 SQL数据查询
(2)常用的查询条件运算符汇总
查询条件 比较 确定范围 确定集合 字符匹配 空值 多重条件 谓词 =,>,<,<=,>=,!=,<>,!>,!< Between and, not between and(两者之间) In,not in(两者以上) Like,not like Is null , is not null And ,or
5.3 SQL数据查询
命令格式: SELECT [ALL|DISTINCT] [ALIAS.] <字段名1> | <函数> [AS 列名称] [, [ALIAS.] <字段名2> | <函数> [AS 列名称] …] FROM <数据源> [WHERE <联接条件表达式1> AND|OR <联接条件表达式2> ] [ORDER BY <排序选项1> [ASC] [DESC] [,<排序选项2> [ASC] [DESC],……] [GROUP BY <分组字段名>] [HAVING<过滤条件表达式>]] 功能注释:

第五章+结构化查询语言(SQL)

第五章+结构化查询语言(SQL)
退出 【说明】如果某些字段名在INTO子句中没有出现,则 新记录在这些字段名上将取空值(或默认值)。 但 必 须 注 意 的 是 , 在 表 定 义 说 明 了 NOT NULL 的字段名不能取空值。
17
<字段名表>:指定表文件中的字段,缺省时,按表文 件字段的顺序依次赋值。 <表达式表>:指定要追加的记录各个字段的值。
REFERENCES 读者)与读者表建立联系。
这里要注意:“FOREIGN KEY 读者编号 TAG 读者编号 REFERENCES 读者”语句中前后两个“读者编号”的含义 不同。
10
6.执行完以上命令后可以在数据库设计器中看到如图5-1 所示界面。
目录 上页 下页 退出
图5-1 数据库设计器 — 图书管理
13
(4)将表temp1 中“dd”的字段名改为“cc”
ALTER TABLE temp1 RENAME COLUMN dd TO cc
(5)删除表temp2中字段名为“dd1”的字段
目录
ALTER TABLE temp2 DROP dd1
上页 (6)将(3)所建的普通索引的关联字段删除。
ALTER TABLE temp2 DROP FOREIGN KEY TAG aa1_key;
第五章 结构化查询语言(SQL)
1
本章目录
第一节 SQL概述
目录
上页
第二节 数据定义功能
下页
第三节 数据操纵功能
退出
第四节 数据查询功能
2
第一节 SQL概述
一、SQL语言的特点
1.综合统一
目录
SQL语言集数据定义(DDL)、数据操纵(DML)、
数据管理(DCL)的功能于一体,语言风格统一,可以
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章 结构化查询语言SQL 结构化查询语言SQL
结构化查询语言SQL 第五章 结构化查询语言SQL
第五章 结构化查询语言SQL 结构化查询语言SQL
教学目标
掌握SQL修改表结构的规则与方法 ; 修改表结构的规则与方法 掌握 掌握SQL修改数据的规则与方法 ; 修改数据的规则与方法 掌握 掌握SQL数据查询功能的语句规则和特点。 数据查询功能的语句规则和特点。 掌握 数据查询功能的语句规则和特点
字段名与类结构化查询语言SQL
工资” 例2:在职工管理数据库中建立一个工资表, 对“工资”字段 :在职工管理数据库中建立一个工资表, 的数据进行有效性检测,并通过“职工号”字段与“职 建立关联。 工.DBF”建立关联。 建立关联 CREATE TABLE 工资 职工号 C(5) PRIMARY KEY; 工资(职工号 REFERENCES 职工 工资 N(7.2) CHECK(工资 职工, 工资>=1000; 工资 AND 工资 工资<=5000) ERROR “工资在 工资在1000至5000之间”,; 之间” 工资在 至 之间 补贴 N(7.2), 应扣数 N(7.2), 实发数 N(7.2))
第五章 结构化查询语言SQL 结构化查询语言SQL
3. 删除
格式: 表名> 条件>] 格式: DELETE FROM <表名 [WHERE <条件 表名 条件 功能:根据 子句指定的条件, 功能:根据WHERE子句指定的条件,删除表中指定的记录; 子句指定的条件 删除表中指定的记录; 省略WHERE子句,则删除表中全部记录。 子句,则删除表中全部记录。 省略 子句
第五章 结构化查询语言SQL 结构化查询语言SQL
5.2
SQL的数据修改功能 SQL的数据修改功能
第五章 结构化查询语言SQL 结构化查询语言SQL
1. 插入
格式: 表名>[(<字段名清单 字段名清单>)] 格式: INSERT INTO <表名 表名 字段名清单
VALUES (<表达式清单 ) 表达式清单>) 表达式清单 数组名>| |FROM ARRAY <数组名 |FROM MEMVAR 数组名 功能: 功能:对指定的表追加一条记录 说明:若表尚未打开,则在一新工作区中打开( 说明:若表尚未打开,则在一新工作区中打开(但当前工作 区不改变) 若表已在非当前工作区中打开, 区不改变)。若表已在非当前工作区中打开,追加 后,原当前工作区不变。 原当前工作区不变。
第五章 结构化查询语言SQL 结构化查询语言SQL
2. 表的删除
格式: DROP TABLE [<数据库名 ]表名 格式: 数据库名>. 表名 数据库名 功能: 功能:从数据库中删除表 例:将工资表删除 DROP TABLE 工资
一次只能删 除一个表
第五章 结构化查询语言SQL 结构化查询语言SQL
第五章 结构化查询语言SQL 结构化查询语言SQL
格式三: ALTER TABLE <表名 DROP <字段名 格式三: 表名> 字段名>… 表名 字段名 功能:该格式可以删除字段、可以修改字段名、可以定义、 功能:该格式可以删除字段、可以修改字段名、可以定义、修改
和删除表一级的有效性规则等。 和删除表一级的有效性规则等。 例1:删除工资表“补贴”字段的有效性规则。 :删除工资表“补贴”字段的有效性规则。 ALTER TABLE 工资 ALTER 补贴 DROP CHECK 例2:将工资表“补贴”字段名改为“补助”。 :将工资表“补贴”字段名改为“补助” ALTER TABLE 工资 RENAME COLUMN 补贴 TO 补助 例3:删除职工表“电话号码”字段。 :删除职工表“电话号码”字段。 ALTER TABLE 职工 DROP COLUMN 电话号码
第五章 结构化查询语言SQL 结构化查询语言SQL
例2: 把‘104’的课程名改为大学语文 的课程名改为大学语文 UPDATE KC SET 课程名 大学语文; 课程名=大学语文 大学语文; WHERE 课程号 课程号=‘104’ 例3: 将英语成绩在 分与 分之间的学生成绩提高 将英语成绩在50分与 分之间的学生成绩提高10% 分与59分之间的学生成绩提高 UPDATE CJ SET 成绩=1.1*成绩 成绩 成绩 WHERE 英语 英语>=50 AND 英语 英语<=59
[<数据库名. >]指出将新建立的表存放于该数据库中。 数据库名 指出将新建立的表存放于该数据库中 指出将新建立的表存放于该数据库中。 新建的表将在编号最小的可用工作区中以独占方式打开, 新建的表将在编号最小的可用工作区中以独占方式打开,并可 通过别名访问它。 通过别名访问它。
第五章 结构化查询语言SQL 结构化查询语言SQL
第五章 结构化查询语言SQL 结构化查询语言SQL
(3)使用数组追加记录 )
DIMESION LS(4) LS(1)=“990105” LS(2)=“汪力” 汪力” 汪力 LS(3)=“男” ) 男 LS(4)={05-12-82} INSERT INTO XS FROM ARRAY USE XS LIST LS
行更新;省略WHERE子句,则更新全部记录。 子句, 行更新;省略 子句 则更新全部记录。
例1: 将工资表中全体职工的工资增加 元,并修改实发数。 : 将工资表中全体职工的工资增加10元 并修改实发数。
UPDATE 工资 SET 工资 工资 工资=工资 工资+10 UPDATE 工资 SET 实发数=工资 补贴-应扣数 实发数 工资+补贴 应扣数 工资 补贴 USE 工资 LIST
第五章 结构化查询语言SQL 结构化查询语言SQL
2. 更新
格式: 表名> 字段名1>=表达式1 1>=表达式 格式: UPDATE <表名> SET <字段名1>=表达式1 [,<字段名2>=表达式2 <条件 条件>] [,<字段名2>=表达式2…][WHERE <条件>] 字段名2>=表达式 功能:根据WHERE子句指定的条件,对指定记录的字段值进 子句指定的条件, 功能:根据 子句指定的条件
第五章 结构化查询语言SQL 结构化查询语言SQL
(1) <字段名清单 为数据表指定的字段,省略,按数据表字段 字段名清单>为数据表指定的字段 省略, 字段名清单 为数据表指定的字段, 的顺序依次赋值。 的顺序依次赋值。 (2) VALUES <表达式清单 为要追加的记录的各字段值。 表达式清单>为要追加的记录的各字段值 表达式清单 为要追加的记录的各字段值。 (3) FROM ARRAY <数组名 表示将已存在的数组的内容赋给 数组名>表示将已存在的数组的内容赋给 数组名 字段。 字段。 (4) FROM MEMVAR表示把同名内存变量的内容赋给字段。 表示把同名内存变量的内容赋给字段。 表示把同名内存变量的内容赋给字段
注意: 命令是逻辑删除记录, 注意:SQL DELETE命令是逻辑删除记录,如果要物理删除 命令是逻辑删除记录 记录需要继续使用PACK命令。 命令。 记录需要继续使用 命令
第五章 结构化查询语言SQL 结构化查询语言SQL
例1: 把学号为020101的学生从表 中删除 把学号为 的学生从表XS中删除 的学生从表 DELETE FROM XS WHERE 学号 学号=‘020101’ 例2: 删除学生表中所有数学成绩不及格的学生记录 DELETE FROM XS WHERE 学号 IN; ; (SELECT 学号 FROM CJ WHERE 数学 数学<60)
第五章 结构化查询语言SQL 结构化查询语言SQL
5.2
SQL的数据查询功能 SQL的数据查询功能
第五章 结构化查询语言SQL 结构化查询语言SQL
一. SELECT查询命令
格式: 检索项表> 格式: SELECT <检索项表 检索项表
FROM <基本表或(和)视图集合 基本表或( 视图集合> 基本表或 [WHERE <连接条件 ] 连接条件> 连接条件 [GROUP BY <字段名集合 字段名集合>] 字段名集合 [HAVING <过滤条件 过滤条件>] 过滤条件 [ORDER BY <排序项 排序项>[ASC/DESC] 排序项 [,<排序项 排序项>[ASC/DESC]…]] 排序项
例1:用命令建立职工管理数据库,并在库中建立一个数据 :用命令建立职工管理数据库,
表职工.DBF, 由以下字段组成 : 职工号 ( C,5) , 姓名 , 由以下字段组成: 职工号( 表职工 ) (C,6),性别(C,2),出生日期 ,婚否 。并按职 ) 性别( ) 出生日期(D),婚否(L)。 工号建立主索引。 工号建立主索引。 CREATE DATABASE 职工管理 CREATE TABLE 职工 职工号 C(5) PRIMARY KEY,姓 职工(职工号 姓 名 C(6),性别 C(2),出生日期 D,婚否 L) 性别 出生日期 婚否 用MODIFY DATABASE命令打开数据库设计器可以看到 命令打开数据库设计器可以看到 职工.DBF。 。 职工
第五章 结构化查询语言SQL 结构化查询语言SQL
格式二: 表名> 字段名>… 格式二: ALTER TABLE <表名 ALTER <字段名 表名 字段名 功能:该格式主要用于定义、 功能:该格式主要用于定义、修改和删除有效性规则和默 认值定义。 认值定义。 例:修改或定义工资表“补贴”字段的有效性规则。 修改或定义工资表“补贴”字段的有效性规则。 ALTER TABLE 工资 ALTER 补贴 SET CHECK 补 补贴大于100! 贴>=100 ERROR “补贴大于 !" 补贴大于
相关文档
最新文档