中国电信sql培训材料共25页文档
- 格式:ppt
- 大小:4.20 MB
- 文档页数:25
SQL应用培训资料目录:1、Select语句基础(基本语法、单表查询、分组查询)2、Select语句高级应用(多表查询、子查询、嵌套查询、集合操作、用SQL创建SQL)3、DML语句(Insert、Update、Delete)4、DDL语句(Create、Alter、Drop)5、DCL语句(Grant、Revoke)章节内容:1.Select语句基础(基本语法、单表查询、分组查询)SELECT语句的功能:1.1select语句的基本语法和基本运算符:SELECT column1,column2.、、(distinct,expression,alias,||,as)/*指定提取的列FROM table1,table2、、/*指定表提取WHERE条件设置:/*设置条件范围GROUP BY/*分组HAVING/*设置分组条件ORDER BY ASC/DESC/*设置排序1.1.1各种运算符及运算等级:(算术运算符,连接运算符,关系运算符,其他运算符,逻辑表达式)1、(),+,-,*,/数字和日期数据可以使用进行计算2、||(=concat)连接运算符3、=,>,>=,<,<=关系运算符4、IS[NOT]NULL,LIKE,[NOT]IN其他运算符5、[NOT]BETWEEN AND其他运算符6、NOT逻辑表达式7、AND逻辑表达式8、OR逻辑表达式注释:①NULL值定义NULL值是未赋值的未知数NULL值是与零或空串不同的NULL值运算算术表达式中含有NULL值,表达式的计算结果为NULL(NULL值传播)查找NULL使用IS NULL字句②使用别名表示表或列(AS)利用表别名可以进行自查询(多个别名)和方便程序编写,利用列别名可以简化列显示标题③使用连接操作(||)可以归并多列显示为一列④重复行默认的查询结果包括重复行要去掉重复行需在SELECT语句中使用DISTINCT关键字⑤字符型与日期型字符型与日期型的值要用单引号标识字符型值大小写敏感,日期型值格式敏感⑥使用LIKE子句使用LIKE子句执行一个含有通配符的模糊查找。
提纲:1、SQLServer锁的概念2、SQLServer事物概念3、解决数据库异常膨胀的技术思路4、操作系统崩溃后数据库重新安装的流程5、数据库性能优化6、常见的SQL Server连接失败错误及解决方法7、无法合理使用已建立的索引的错误写法8、常见系统函数9、编写可读性强的代码1.SQLServer锁的概念1.1锁定Microsoft SQL Server 使用锁定确保事务完整性和数据库一致性。
锁定可以防止用户读取正在由其他用户更改的数据,并可以防止多个用户同时更改相同数据。
如果不使用锁定,则数据库中的数据可能在逻辑上不正确,并且对数据的查询可能会产生意想不到的结果。
虽然 SQL Server 自动强制锁定,但可以通过了解锁定并在应用程序中自定义锁定来设计更有效的应用程序1.2并发问题如果没有锁定且多个用户同时访问一个数据库,则当他们的事务同时使用相同的数据时可能会发生问题。
并发问题包括:∙丢失或覆盖更新。
∙未确认的相关性(脏读)。
∙不一致的分析(非重复读)。
∙幻像读。
1.2.1丢失更新当两个或多个事务选择同一行,然后基于最初选定的值更新该行时,会发生丢失更新问题。
每个事务都不知道其它事务的存在。
最后的更新将重写由其它事务所做的更新,这将导致数据丢失。
例如,两个编辑人员制作了同一文档的电子复本。
每个编辑人员独立地更改其复本,然后保存更改后的复本,这样就覆盖了原始文档。
最后保存其更改复本的编辑人员覆盖了第一个编辑人员所做的更改。
如果在第一个编辑人员完成之后第二个编辑人员才能进行更改,则可以避免该问题。
1.2.2未确认的相关性(脏读)当第二个事务选择其它事务正在更新的行时,会发生未确认的相关性问题。
第二个事务正在读取的数据还没有确认并且可能由更新此行的事务所更改。
例如,一个编辑人员正在更改电子文档。
在更改过程中,另一个编辑人员复制了该文档(该复本包含到目前为止所做的全部更改)并将其分发给预期的用户。
SQL语句培训教材一、SQL概述1、SQL初识SQL(Structured Query Language,结构化查询语言)是一种查询、插入、更新和删除数据,生成、修改和删除数据库对象,提供数据库安全控制,完整性及数据保护控制,是面向数据库的通用数据处理语言规范。
数据库对象包括表、视图、索引、同义词、族、触发器、函数、过程、包、数据库链和快照等。
2、SQL数据库的体系统结构(1)SQL数据库是表的汇集;(2)SQL表由行集构成,行是列的序列,每列对应一个数据项;(3)表或者是基本表,或者是视图;(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。
存储文件与物理文件对应。
(5)用户可以用SQL语句对表进行操作,包括视图和基本表。
(6)SQL的用户可以是应用程序,也可以是终端用户。
3、SQL的组成SQL由4部份组成:(1)数据定义:SQL DDL。
定义SQL模式、基本表、视图和索引。
(2)数据操纵:SQL DML。
包括数据查询和数据更新(增、删、改)。
(3)数据操制:包括对基本表和视图的授权、完整性规则的描述和事务控制等。
(4)嵌入式SQL的使用规定二、数据库查询1、SQL语句符号:2、简单查询当我们可以用SQL*PLUS登录到SQL>下后,我们可以用DESC 显示某表的结构,也可以用select 语句简单查询表中的一些列的内容。
例:要查询T_person表中人员的姓名、出生日期及出生地,则:SQL> select name,dob,natal_place from t_person;3、伪列及伪表Oracle系统为了实现完整的关系数据库功能,系统专门提供了一组称为伪列(Pseudocolumn)的数据库列,这些列不是在建立对象(如建表)时由我们完成的,而是在我们建立对象时由自动Oracle 完成的。
Oracle目前有以下的伪列:●CURRVAL and NEXTVAL 使用序列号的保留字●LEVEL 查询数据所对应的级●ROWID 记录的唯一标识●ROWNUM 限制查询结果集的数量有关伪列的详细解释和使用见相关章节。