替换变量:用&符号来定义替换变量支持交互性提示,对于字符性的数字,一定要写在单引号之间
set verify on
set verify off;
相当于开关变量,用于控制是否显示新旧的sql语句
select id,last_name,salary from s_emp where title='&job_title';
更改交互的提示信息:
accept p_dname prompt ' 提示信息';
定义变量:
define p_dname='abc';
视图的约束
with read only 视图只读约束(O)
with check option 不允许插入与where条件不符的记录,类似于check约束的功能(V)
在select from 后也可以使用子查寻,这个写法也叫做内嵌视图
例:
select first_name,salary,avgsal from s_emp e,(select dept_id,avg(salary) avgsal from s_emp group by dept_id) s where e.dept_id=s.dept_id and e.salary>s.avgsal;
找出工资前三名的员工
select first_name,salary
from (select first_name,salary from s_emp order by salary desc)
where rownum<=3;
列出每一个表的外键的定义,主表表名,主表字段名,子表表名,子表字段名 (画出E-R图)
select c.table_name,cc.column_name,
p.table_name,pc.column_name,
p.constraint_type
from user_constraints c,user_cons_columns cc,user_constraints p,user_cons_columns pc
where c.constraint_name=cc.constraint_name
and p.constraint_name=pc.constraint_name
and c.r_constraint_name=p.constraint_name
and c.table_name='S_EMP'
and c.constraint_type='R';
动态生成脚本
set head off
set feed off
set echo off
spool seletab.sql
select 'select * from '||table_name||';'
from user_tables;
spool off 作者: 张兴康 时间: 2020-5-13 14:18 作者: 张兴康 时间: 2020-5-13 14:23 作者: fteair 时间: 2020-5-13 14:25 作者: caixuqad 时间: 2020-5-19 17:46