- 1. iSQL*Plus
- 2. 目标通过本章学习,您将可以:
在查询中使用变量。
熟悉 iSQL*Plus 环境。
使输出更便于理解。
创建和执行脚本。
- 3. 变量I want to query different values.... salary = ? …
… department_id = ? …
... last_name = ? ...User
- 4. 变量使用iSQL*Plus 变量:
临时存储值
单个 (&)
两个 (&&)
定义命令
在SQL语句中改变变量的值。
动态修改开头和结尾。
- 5. & 变量在变量名前加前缀 (&) 使用户输入值。SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num ;
- 6. & 变量12101
- 7.
SELECT last_name, department_id, salary*12
FROM employees
WHERE job_id = '&job_title' ;字符和日期型变量在子符和日期两端加单引号。
- 8. 指定列名、表达式和文本使用变量可以提供下面的内容:
WHERE 条件
ORDER BY 子句
列表达式
表名
整个 SELECT 语句
- 9. SELECT employee_id, last_name, job_id,
&column_name
FROM employees
WHERE &condition
ORDER BY &order_column ;指定列名、表达式和文本
- 10. 定义变量可以使用DEFINE 命令提前定义iSQL*Plus 变量。
DEFINE variable = value 创建一个字符型用户变量
使用 DEFINE 定义的变量名字中包含空格时,变量名应包含在单引号中。
定义的边令在会话级有效。
- 11. DEFINE 和 UNDEFINE 命令定义命令在下列条件下失效:
UNDEFINE 命令
退出 iSQL*Plus
可以重复使用 DEFINE 命令改变变量。DEFINE job_title = IT_PROG
DEFINE job_title
DEFINE JOB_TITLE = "IT_PROG" (CHAR)UNDEFINE job_title
DEFINE job_title
SP2-0135: symbol job_title is UNDEFINED
- 12. SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num ;DEFINE 命令与& 变量使用 DEFINE 创建变量。
使用变量前缀 (&) 在 SQL 语句中引用变量。DEFINE employee_num = 200
- 13. SELECT employee_id, last_name, job_id, &&column_name
FROM employees
ORDER BY &column_name;使用 (&&) 避免为同一变量重复赋值。…&& 变量
- 14. old 3: WHERE employee_id = &employee_num
new 3: WHERE employee_id = 200VERIFY 命令使用 VERIFY 在 iSQL*Plus 中显示变量被替代前和变量被替代后
的SQL语句。
SET VERIFY ON
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num;
- 15. iSQL*Plus 环境使用SET 命令控制当前会话。
使用 SHOW 命令显示当前的设置。SET ECHO ONSHOW ECHO
echo ON SET system_variable value
- 16. SET 命令ARRAYSIZE {20 | n}
FEEDBACK {6 | n |OFF | ON}
HEADING {OFF | ON}
LONG {80 | n}| ON | text}SET HEADING OFFSHOW HEADING
HEADING OFF
- 17. iSQL*Plus 格式命令COLUMN [column option]
TTITLE [text | OFF | ON]
BTITLE [text | OFF | ON]
BREAK [ON report_element]
- 18. COLUMN 命令控制列的输出:
CLE[AR]: 清除列格式
HEA[DING] text: 设置列头
FOR[MAT] format: 改变列的输出格式
NOPRINT | PRINT
NULLCOL[UMN] [{column|alias} [option]]
- 19. COLUMN 命令创建列头:COLUMN last_name HEADING 'Employee|Name'
COLUMN salary JUSTIFY LEFT FORMAT $99,990.00
COLUMN manager FORMAT 999999999 NULL 'No manager'COLUMN last_nameCOLUMN last_name CLEAR显示 LAST_NAME 列的当前格式。清除 LAST_NAME 列的当前格式设置
- 20. COLUMN 格式Result
1234
001234
$1234
L1234
1234.00
1,234 Example
999999
099999
$9999
L9999
9999.99
9,999Element
9
0
$
L
.
, Description
Single zero-suppression digit
Enforces leading zero
Floating dollar sign
Local currency
Position of decimal point
Thousand separator
- 21. BREAK 命令使用 BREAK 命令去重。
BREAK ON job_id
- 22. TTITLE 和 BTITLE 命令显示报告头和报告尾
设置报告头。
摄制报告尾。TTI[TLE] [text|OFF|ON]TTITLE 'Salary|Report'BTITLE 'Confidential'
- 23. TTITLE 和 BTITLE 命令显示报告头和报告尾。
设置报告头。
设置报告尾。TTI[TLE] [text|OFF|ON]TTITLE 'Salary|Report'BTITLE 'Confidential'
- 24. 使用脚本创建报告1. 书写并测试 SQL SELECT 语句。
2. 保存 SELECT 语句到脚本文件。
3. 在编辑器中执行脚本。
4. 在 SELECT 语句前添加格式命令。
5. 在 SELECT 语句后添加终止符。
- 25. 使用脚本创建报告6. 在 SELECT 后清除格式设置。
7. 保存脚本。
8. 在 iSQL*Plus 的文本框中加载脚本, 点击执行按钮运行脚本。
- 26. 报告…
- 27. 报告…
- 28. 总结通过本章学习,您已经学会:
使用 iSQL*Plus 变量临时存储值。
使用 SET 命令控制当前 iSQL*Plus 环境。
使用 COLUMN 命令控制列的输出。
使用 BREAK 命令去重并将结果积分组。
使用 TTITLE 和 BTITLE 显示报告头和报告尾。
- 29. Practice 7 OverviewThis practice covers the following topics:
Creating a query to display values using substitution variables
Starting a command file containing variables
- 30. (本页无文本内容)
- 31. (本页无文本内容)
- 32. (本页无文本内容)