




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第4章 数据库及运用程序开发 关系数据库规范言语SQL西安交通大学计算机教学实验中心4.1.3关系数据库规范言语关系数据库规范言语SQLn构造化查询言语(SQL,Structured Query Language)是关系数据库的规范言语。它的主要功能包括:n数据定义:Data Defination Language(DDL)n数据查询: Data Query n数据支配:Data Manipulation Language(DML)n数据控制 : Data Control Language(DCL)2SQL特点n综合一致:集数据定义言语综合一致:集数据定义言语DDL、数据支配言语数据支配言语D
2、ML和数据控制言语和数据控制言语DCL于一体,综合管理功能于一身。于一体,综合管理功能于一身。n高度非过程化:用户只需提出高度非过程化:用户只需提出“做什么,做什么,而不需指明而不需指明“怎样做。怎样做。n面向集合的操作方式:用户查询、修正、面向集合的操作方式:用户查询、修正、的数据不是一条记录,而是记录的集合。的数据不是一条记录,而是记录的集合。SQL特点2n以同一语法构造提供两种运用方式:用户可以同一语法构造提供两种运用方式:用户可以从键盘运用以从键盘运用SQL命令,也可以将命令,也可以将SQL语句语句嵌入其他高级言语中。嵌入其他高级言语中。(PHP VC例如例如)n言语简约、易于运用:语
3、句很少,言语简约、易于运用:语句很少,n数据定义:数据定义:CTEATE DROP ALTERn数据支配:数据支配:INSERT UPDATE DELETEn数据查询:数据查询:SELECTn数据控制:数据控制:GRANT REVOTEn可以对根本表和视图进展查询可以对根本表和视图进展查询关系数据库的三级方式构造 nSQL Structured Query Language) n1 建立表nCREATE TABLE table_namen (column_name data-type consraint, )建立表nCREATE TABLE employeen(eid CHAR(6),nnam
4、e VARCHAR(8) NOT NULL,nage NUMERIC(3,0),ncountry VARCHAR(10) NULL)n/ NUMERIC(3,0) - NUMERIC建立表nCREATE TABLE employeen(eid CHAR(6) NOT NULL PRIMARY KEY,nname VARCHAR(8) NOT NULL,nage NUMERIC(3,0),ncountry VARCHAR(10) NULLn)ndrop table employee3 删除数据表 SQL SERVER中常用的数据类中常用的数据类型型 n学号、身份证号等,运用字符型数据2 插入记录
5、nINSERT INTO 表名 列名表 VALUES 值表nINSERT INTO employee n(eid, name, age, country) nVALUES (3018, zhang, 28, China) nINSERT INTO employee nVALUES (3056, wang, 35, USA)nINSERT INTO employee n(eid, name, country) nVALUES (4025, li, Russia)2、 插入记录3、修正记录nUPDATE 表名 nSET 字段名=表达式 nWHERE 条件 nUPDATE employeenSET
6、name=Li MingnWHERE eid=4025nUPDATE employeenSET name=Zhang Li,nage=36,ncountry=USAnWHERE eid=3056n可以修正多个字段的值。假设不带WHERE修正一切的记录。4、删除记录nDELETE 表名nWHERE 条件nDELETE employeenWHERE eid=30185、 查询记录nSELECT 表达式 nFROM 表名表nWHERE 条件nGROUP BY 字段名表nHAVING 条件nORDER BY 字段名表 1 举例nSELECT pub_id, pub_name, countrynFROM
7、 publishersnSELECT * nFROM publishers2 删除反复的行DISTICT nSELECT city, statenFROM authersnSELECT DISTICT city, statenFROM authers 3 计算表达式 n nS E L E C T t i t l e _ i d , t y p e , p r i c e , price_price*0.3nFROM titlen nSELECT au_lname+.+au_fname, city+.+statenFROM authors4挑选条件 na条件:n比较= = != nprice45
8、.3ncountry=China n逻辑运算nNOT AND OR nCountry=China AND age35 b举例nSELECT title_id, type, price, price - price*0.3 nFROM titlesnWHERE price - price*0.318nSELECT pub_id, pub_namenFROM publishersnWHERE country=USA AND state=CA(c) LIKE n列名 NOT LIKE 方式n%: 恣意字符串, _:恣意一个字符n nSELECT au_lname+.+au_fname, city+.
9、+statenFROM authorsnWHERE au_fname LIKE D% nSELECT au_lname+.+au_fname, city+.+statenFROM authorsnWHERE au_id LIKE 72_-%其他的条件查询(5) 结果排序nORDER BY 字段表n通常前往的结果是随机陈列的。 nSELECT stor_name, citynFROM storesnORDER BY store_namenSELECT stor_name, citynFROM storesnORDER BY store_name DESCn nSELECT stor_name,
10、citynFROM storesnORDER BY store_name ASCnSELECT stor_name, citynFROM storesnORDER BY stor_name, city n用多个列陈列。n nSELECT stor_name, citynFROM storesnORDER BY staten用不出现的列。 (6) 统计函数 nSELECT AVG(price)nFROM titlesn nSELECT MAX(price)nFROM titlesnWHERE type=businessnSELECT AVG(qty), SUM(qty), COUNT(DISTI
11、CT stor_id)nFROM salesn nSELECT COUNT*nFROM publishersnWHERE state=CA(7) 结果分组 nGROUP BY 分组列名表nSELECT type, AVG(price), SUM(price), COUNT(*)nFROM titlesnWHERE type in (business, mod_cook, trad_cook)nGROUP BY typeSELECT type, pub_id, AVG(price), SUM(price), COUNT(*)FROM titlesWHERE type in (business,
12、mod_cook, trad_cook)GROUP BY type, pub_idnGROUP BY 分组列名表nHAVING 条件n对GROUP的分组结果再进一步挑选。 nSELECT type, AVG(price), SUM(price), COUNT(*)nFROM titlesnWHERE price$10nGROUP BY type运用HAVINGnSELECT type, AVG(price), SUM(price), COUNT(*)nFROM titlesnWHERE price$10nGROUP BY typenHAVING AVG(price)$20运用HAVING(8)
13、 多表查询na笛卡尔乘积nSELECT title_id, au_fnamenFROM titles, authorsn nSELECT titles.title_id, titles.title, titleauthor.au_id nFROM titles, titleauthorb 别名nSELECT t.title_id, t.title, ta.au_id nFROM titles t, titleauthor tan nSELECT t.title_id, t.title, ta.au_id nFROM titles t, titleauthor tanWHERE t.title_
14、id=ta.title_idc挑选nSELECT t.title_id, a.au_id nFROM titles t, titleauthor ta, authors anWHERE t.title_id=ta.title_id and ta.au_id=a.au_id6 视图 n(1视图的定义nSQL建立视图的语句格式为:nCREATE VIEW (,)nAS nCREATE VIEW au_viewnASnSELECT au_id, au_fname, au_lnamenFROM authorsnCREATE VIEW author_titlenASnSELECT t.title_id,
15、 a.au_id nFROM titles t, titleauthor ta, authors anW H E R E t . t i t l e _ i d = t a . t i t l e _ i d a n d ta.au_id=a.au_id(2)视图查询nSELECT * nFROM au_viewnSELECT t.title_id, a.au_id nFROM titles t, titleauthor ta, authors anWHERE t.title_id=ta.title_id and ta.au_id=a.au_id 3删除视图nDROP VIEW 视图名n nD
16、ROP VIEW a_authors7、索引n索引可以极大地提高查询的速度 n索引可以建在一列或几列上 n有ASC(升序)和DESC(降序) n1索引类型n按照存储位置:聚集索引和非聚集索引。n按照关键字值能否独一:独一索引和非独一所以。2建立索引nCREATE UNIQUE CLUSTERED | NOCLUSTERED INDEX 索引名nON 表名 列名表nCREATE UNIQUE INDEX id_index nON authors (au_id)nCREATE INDEX id_index nON authors ( au_fname DESC,au_id)nCREATE CLUS
17、TERED INDEX id_index nON authors ( au_fname DESC,au_id)3删除索引nDROP INDEX 表名.索引名n nDROP INDEX authors.id_index8、数据控制n数据控制也称为数据维护n经过对数据库用户的运用权限加以限制而保证数据平安的重要措施。nSQL言语提供一定的数据控制功能,能在一定程度上保证数据库中数据的完全性和完好性,并提供了一定的并发控制及恢复才干。nSQL的数据控制语句包括授权(Grant)、收权(Revoke)和回绝访问(Deny)三种,其权限的设置对象可以是数据库用户或用户组。 1授权 nGRANT语句向用户授予操作权限 nGRANT , n ON nTO , | PUBLICnWITH GRANT O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《万以内数的认识》大单元教学概述(教学设计)-2023-2024学年二年级下册数学青岛版
- 公司代理运营合同样本
- 2024-2025学年高中生物 专题2 微生物的培养与应用 课题3 分解纤维素的微生物的分离教学设计 新人教版选修1
- 与外贸合同样本
- 2010购房合同样本
- 2024-2025版新教材高中化学 第2章 第1节 第2课时 一种重要的混合物-胶体教学设计 鲁科版必修第一册
- 乙方供货方合同样本
- 2023六年级数学上册 六 百分数第2课时 百分数与小数、分数的互化 1百分数和小数的相互改写教学设计 苏教版
- 仓库施工合同样本
- 仓库建设工程合同样本
- 2025-2030年中国微型扬声器(受话器)行业竞争格局及发展策略分析报告
- 程序员个人职业生涯规划
- 2025年广东深圳光明区住房和建设局招聘一般专干4人高频重点模拟试卷提升(共500题附带答案详解)
- 2025年离婚协议模板正版手写
- 2025年国家公务员考试时事政治必考试题库及参考答案
- 人工智能安全:原理与实践 课件全套 李剑 第1-16章 人工智能安全概述- 代码漏洞检测原理与实践
- 《医疗机构开展医养结合服务的质量规范标准》
- 《健康进课堂》2024年幼儿园家长助教医疗版
- 盲板抽堵作业安全培训
- DB31∕T 989-2016 大中型体育场馆建筑合理用能指南
- 室外停车场施工设计方案
评论
0/150
提交评论