Oracle PL/SQL
Oracle 基本
- 默认帐户
用户名:scott
,密码:tiger
sys
system
- (待补充)
标准 SQL 语句
- 添加
INSERT INTO table_name(field1,field2) VALUES(value1,value2)
- 查询
SELECT * FROM DUAL WHERE field=value- 更新
UPDATE table_name SET field1=value1 WHERE field=value- 删除
DELETE FROM table_name WHERE field1=value1
PL/SQL客户端(dbms)命令
- 开启控制台输出
set serveroutput on
- 打开编辑窗口
ed- 执行编辑窗口编辑好的内容
/- x
PL/SQL
- 输出消息(
exec
)
BEGIN
dbms_output.put_line(‘msg’);
END;
或者
exec dbms_output.put_line(‘msg’);
- 声明变量并输出消息(
DECLARE
)
DECLARE
msg VARCHAR2(30);
BEGIN
msg :=’test’;
dbms_output.put_line(msg);
END;字符串连接(
||
)
DECLARE
msg1 VARCHAR2(30);
msg2 VARCHAR2(30);
BEGIN
msg1 := ‘字符串1’;
msg2 := ‘字符串2’;
dbms_output.put_line(msg1||msg2);
END;
从数据库查出数据并赋值输出(
SELECT ... INTO ... FROM ...
)DECLARE
e_name VARCHAR2(20);
BEGIN
SELECT ename INTO e_name FROM emp WHERE empno=’7369’;
dbms_output.put_line(‘编号7369的员工名为’||e_name);
END;用类型引用来声明变量(
%TYPE
)(存储一个字段的变量)
DECLARE
e_name emp.ename%TYPE;
e_sal emp.sal%TYPE;
BEGIN
SELECT ename,sal INTO e_name,e_sal FROM emp WHERE empno=’7369’;
dbms_output.put_line(‘编号为7369的员工姓名为:’||e_name||’ ‘||’薪水为:’||e_sal);
END;- 用类型引用来声明变量(
%ROWTYPE
)
(存储一个行的变量)
DECLARE
r_emp emp%ROWTYPE;
BEGIN
SELECT ename,sal INTO r_emp.ename,r_emp.sal FROM emp WHERE empno=’7369’;
dbms_output.put_line(‘编号为7369的员工姓名为:’||r_emp.ename||’ ‘||’薪水为:’||r_emp.sal);
END; - 输入(
&
)
输入的时候把变量名放在&
后面
DECLARE
e_name VARCHAR2(20);
BEGIN
e_name:=&e_name;
dbms_output.put_line(e_name);
END; - 在声明变量的时候输入
DECLARE
e_empno emp.empno%TYPE:=&empno;
r_emp emp%ROWTYPE;
BEGIN
SELECT ename,sal INTO r_emp.ename,r_emp.sal FROM emp WHERE empno=e_empno;
dbms_output.put_line(‘编号为’||e_empno||’的员工姓名为:’||r_emp.ename||’ ‘||’薪水为:’||r_emp.sal);
END;