《oracle从入门到精通(PDF格式)》第8章


第 8 页,共 106 页 
…………………………………………………………Page 9……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
修改
(五)权限控制语句(DCL):GRANT 授予权限 /REVOKE 移除权限
1。4、SELECT 语句
1、语法:
SELECT 查询列表 FROM 数据源;
*&* SQL 命令必须加分号。
ALTER USER HR IDENTIFIED BY HR ACCOUNT UNLOCK;
修改用户 解锁
给 HR 解锁
CONNECT(conn) HR/HR(密码) 用 HR 用户连接数据库。
*&*(不是 SQL 命令 是 SQLPLUS 命令)不用加分号
DESCRIBE(desc) DEPARTMENTS
关键字 表名
描述表命令(SQLPLUS 命令)
2、SQL 语句说明:
(1)语句文本的书写不区分大小写。(但字符串在作为值的时候要注意大小写)
(2)语句可以写单行也可以写多行。
(3)关键字不能缩写或跨行。
(4)语句通常被分多行书写。
(5)缩进被用于提高语句的可读性。
3、数字和日期都可以使用数学运算符建立表达式。
+,…,*,/ 不等于
日期可以加减数字,数字默认为天。
日期不能加日期,但日期可以减日期。
字符不能加减。
4、定义空(NULL)值
空值出现在表达式中会导致整个表达式的值为空。
NVL(字段名,将要赋予的值)函数
作用:将空值转换成其他有 ASCLL码的值。
annual_salary 年薪
5、别名
可以加中文的字段别名。
如果想强制地改变列名的大小写,可以在别名的定义时加上双引号;列名有空格时也要在列名上加双 
引号。
例:select lastname as 〃employees name〃 from employees;
第 9 页,共 106 页 
…………………………………………………………Page 10……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
6、spool +路径
保存命令(将显示保存)
7、连接操作符: ||
select lastname || "work in" || department_id from tablename;
select last_name || """s salary is " || salary 员工月薪 from employees;
~~~
注:在单引号中还要使用单引号的话,就必须使用两个单引号来实现一个单引号的功能。
8、文本字符串
*可以代表字符、数字或是日期。
*当代表字符或日期的时候用单引号括起来,数字不需要。
9、DISTINCT
在查询时默认显示所有的行,包括有重复值的行。
DISTINCT 消除重复行关键字,放在整查询列表的最前面。
作用范围:整个查询列表的组合。
消除重复行后会按字段的特性,做升序排列。(执行过程:先排序,再消除重复)
select distinct department_id;job_id from employees;
1。5、SQLPLUS 与 SQL 的关系
SQL *是一种语言
*ANSI 标准
*关键字不能缩写
*用于操作数据库中的数据和表的定义
1、SQLPLUS命令的功能:
*描述表的结构
*编辑 SQL 语句
2、查询 SQLPLUS 命令
help + 命令
3、SQLPLUSW 在 WINDOWS 下运行的分析器。
登陆 ISQLPLUS
(1)先到服务中启动 OracleOraHome92HTTPServer
(2)在浏览器中输入:http://wnj:7778/isqlplus
URL(网页中的地址)
第 10 页,共 106 页 
…………………………………………………………Page 11……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
4、SQLPLUS 命令:
4。1、与文件相关的命令:
4。1。1、 spool + 路径


spool off
4。1。2、save
把当前内存中的语句保存为文本文件。
4。1。3、run 或 /
运行当前内存中的语句
4。1。4、clear buffer(cl buff)
清空当前内存中的语句
4。1。5、start @ 读取并执行
4。1。6、get 读取不执行
4。2编辑命令:
z List 列出一条语句
*表示当前行
z Change 修改命令
原来 c/jj/kk
c/jjj/xxx
z input 在当前行之后插入一行新的数据
z append 在当前行中插入新的东西
n 写数字显示对应行
z delete
del + 回车 删除当前行
del 1 3 删除第一到第三行
z edit l;c;i;a;n;d;e
z 查看当前用户
SHOW USER
z 默认的日期格式:DD…MON…RR 日…月…年
z 日期可以进行比较;
z 字符可以进行比较(以字母的 ASCLL 码比较);
z IN(set)或NOT IN 匹配任何列表中的值;
z LIKE 模糊匹配字符串值;
z IS NULL 是否空值;
z IS NOT NULL 是否不为空;
z BETWEEN 可以做数字、日期和字符的比较。
z 通配符 %、_
S_mith
WHERE first_name like "s/_%"escape"/";
解释这个符号后的下划线为正常的字符。如果不加,将被视为通配符作用的下划线。
"_"只能通配一个字符
主要用于通配固定位数的字符。例如查询月收入五位数以上的员工。五位就可以用"_"来查询。
第 11 页,共 106 页 
…………………………………………………………Page 12……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
z 逻辑操作符(用在 WHERE 子句中)
1。 AND
2。 OR
3。 NOT
先执行 NOT ,再执行 AND 最后执行 OR。
z ORDER BY
ORDER BY 子句在 SELECT 语句的最后。
z ASC:升序 DESC:降序
z 空值作为无穷大来处理。
z rownum 显示行数量约束的关键字(在结果中可以做代理键使用);
可以按照查询列表中序号进行排序。
系统在用户写出查询列表的同时就赋予每个列名一个序号,升序赋予。
例: SELECT name;phone;adress from。。。。。。。。。;
1 2 3
1。6、单行函数
单行函数:对单行数据进行计算并返回一个值的函数。
*修改数据项
*接受参数返回一个值。
*对每行进行操作。
*每行返回一个结果。
*可以修改数据类型
*可以嵌套
1、character 字符类型函数:
z LOWER()强制小写
z UPPER()强制大写
z INITCAP()每个单词首字母大写;可以用在 WHERE子句中。
z CONCAT(‘’,‘’)连接函数
z SUBSTR(string;a';b')返回 string 的一部分,a和 b 以字符为单位。
z SUBSTRB(string;a';b')返回 string的一部分,a和 b 是以字节为单位。
z SUBSTRC(string;a';b')返回 string的一部分,a和 b 是以UNICODE 完全字符为单位。
z SUBSTR2(string;a';b')返回 string的一部分,a和 b 是以UCS2 代码点为单位。
z SUBSTR4(string;a';b')返回 string的一部分,a和 b 是以UCS4 代码点为单位。
以上函数都是返回 string 的一部?
小说推荐
返回首页返回目录