oracle学习记录之十五
2011-12-12 19:49
281 查看
pl/sql
存储过程
create table mytest(name varchar2(20), passwd varchar2(20));
SQL> create or replace
procedure spro1 is
2 begin
3 insert into mytest values('xiaoming', 'm123');
4 end;
5 /
exec spro1;
SQL> create or replace
procedure spro2 is
2 begin
3 delete from mytest where name='xiaoming';
4 end;
5 /
set serveroutput on; -- set serveroutput off; 打开或关闭输入选项
SQL> begin
2 dbms_output.put_line('hello world');
3 end;
4 /
SQL> declare
2 v_ename varchar2(5);
3 begin
4 select ename into v_ename from emp where empno=&no;
5 dbms_output.put_line('雇员名:'||v_ename); --在控制台输出
6 end;
7 /
SQL> declare
2 v_ename varchar2(5);
3 v_sal number(10,2);
4 begin
5 select ename,sal into v_ename, v_sal from emp where empno=&no;
6 dbms_output.put_line('姓名:'||v_ename||' 薪水:'||v_sal);
7 end;
8 /
SQL> declare
2 v_ename varchar2(5);
3 v_sal number(10,2);
4 begin
5 select ename,sal into v_ename, v_sal from emp where empno=&no;
6 dbms_output.put_line('姓名:'||v_ename||' 薪水:'||v_sal);
7 exception
8 when no_data_found then
9 dbms_output.put_line('编号输入有误,请重输');
10 end;
11 /
带参数的存储过程
SQL> create or replace procedure spro4 (spname varchar2, spsal number) is
2 begin
3 update emp set sal=spsal where ename=spname;
4 end;
5 /
SQL> exec spro4('SCOTT',1234);
SQL> create or replace function fun1(name varchar2) return number is yearsal number(7,2);
2 begin
3 select sal*12 into yearsal from emp where ename=name;
4 return yearsal;
5 end;
6 /
SQL> var income number
SQL> call fun1('SCOTT') into : income;
SQL> print income
create or replace package mypackage is
procedure spro4 (spname varchar2, spsal number);
end;
create or replace package body mypackage is
procedure spro4(spname varchar2, spsal number)
is
begin
update emp set sal=spsal where ename=spname;
end;
end;
create or replace package mypackage is
procedure spro4 (spname varchar2, spsal number);
function fun1(name varchar2) return number;
end;
create or replace package body mypackage is
procedure spro4(spname varchar2, spsal number)
is
begin
update emp set sal=spsal where ename=spname;
end;
function fun1(name varchar2) return number is yearsal number(7,2);
begin
select sal*12 into yearsal from emp where ename=name;
return yearsal;
end;
end;
存储过程
create table mytest(name varchar2(20), passwd varchar2(20));
SQL> create or replace
procedure spro1 is
2 begin
3 insert into mytest values('xiaoming', 'm123');
4 end;
5 /
exec spro1;
SQL> create or replace
procedure spro2 is
2 begin
3 delete from mytest where name='xiaoming';
4 end;
5 /
set serveroutput on; -- set serveroutput off; 打开或关闭输入选项
SQL> begin
2 dbms_output.put_line('hello world');
3 end;
4 /
SQL> declare
2 v_ename varchar2(5);
3 begin
4 select ename into v_ename from emp where empno=&no;
5 dbms_output.put_line('雇员名:'||v_ename); --在控制台输出
6 end;
7 /
SQL> declare
2 v_ename varchar2(5);
3 v_sal number(10,2);
4 begin
5 select ename,sal into v_ename, v_sal from emp where empno=&no;
6 dbms_output.put_line('姓名:'||v_ename||' 薪水:'||v_sal);
7 end;
8 /
SQL> declare
2 v_ename varchar2(5);
3 v_sal number(10,2);
4 begin
5 select ename,sal into v_ename, v_sal from emp where empno=&no;
6 dbms_output.put_line('姓名:'||v_ename||' 薪水:'||v_sal);
7 exception
8 when no_data_found then
9 dbms_output.put_line('编号输入有误,请重输');
10 end;
11 /
带参数的存储过程
SQL> create or replace procedure spro4 (spname varchar2, spsal number) is
2 begin
3 update emp set sal=spsal where ename=spname;
4 end;
5 /
SQL> exec spro4('SCOTT',1234);
SQL> create or replace function fun1(name varchar2) return number is yearsal number(7,2);
2 begin
3 select sal*12 into yearsal from emp where ename=name;
4 return yearsal;
5 end;
6 /
SQL> var income number
SQL> call fun1('SCOTT') into : income;
SQL> print income
create or replace package mypackage is
procedure spro4 (spname varchar2, spsal number);
end;
create or replace package body mypackage is
procedure spro4(spname varchar2, spsal number)
is
begin
update emp set sal=spsal where ename=spname;
end;
end;
create or replace package mypackage is
procedure spro4 (spname varchar2, spsal number);
function fun1(name varchar2) return number;
end;
create or replace package body mypackage is
procedure spro4(spname varchar2, spsal number)
is
begin
update emp set sal=spsal where ename=spname;
end;
function fun1(name varchar2) return number is yearsal number(7,2);
begin
select sal*12 into yearsal from emp where ename=name;
return yearsal;
end;
end;
相关文章推荐
- JavaWeb学习记录(十五)——浏览器Cookie禁用后的处理
- oracle学习记录之授权(1)
- oracle学习记录之九
- linux学习记录关于tomcat,jdk,oracle,mysql安装
- Oracle学习记录——使用自定义函数和触发器实现主键动态生成
- oracle学习记录之十八
- Oracle学习记录2(多表查询)
- Oracle学习中...,笔记记录中.....1
- Oracle SQL脚本学习记录一
- Oracle学习记录一
- ORACLE常用函数学习记录
- Oracle记录学习
- TestNG 学习总结 - 测试结果报告 - 自定义日志记录(十五)
- STL学习记录(十五):Stack
- oracle学习记录之十
- oracle开发之<<SQL Cookbook>>学习笔记整理:第一章 检索记录
- vs2013 ODBC连接Oracle 学习记录2
- 学习oracle第一天的个人记录
- JAVA_WEB Oracle 10g学习: PL/SQL集合与记录
- Oracle学习记录1(单行函数,多行函数)