建表、插值的procedure

create or replace procedure CREATE_EMP is
v_createsql varchar2(2000);
v_insertsql varchar2(2000);
begin
v_createsql := 'create table EMP (
employerid number(8) primary key not null,
employername varchar2(20) not null)'; v_insertsql := 'insert into EMP select 10000000,'||chr(39)||'Philippe'||chr(39)||' from dual';
execute immediate v_createsql;
execute immediate v_insertsql;
end;

注意,这里字符串中的单引号可以用chr(39)表示,另外oracle字符串拼接用||

一个简单的procedure:

create or replace procedure EMP_COUNT
AS
V_TOTAL NUMBER(10);
begin
select count(*) into V_TOTAL from EMP;
Dbms_Output.put_line('雇佣总人数为: ' || V_TOTAL) ;
end;

执行procedure:

sql窗口中:

begin

  EMP_COUNT;

end;

另外补充一下procedure和function的区别:

https://stackoverflow.com/questions/25419629/functions-vs-procedures-in-oracle

1、Oracle函数必须返回一个值,而存储过程获取返回值需要通过out,in out参数。

2、普通的sql语句可以直接调用函数,但是无法使用存储过程。

3、function只能返回一个值,但是存储过程可以不返回,返回一个或者返回多个。

4、函数一般用来计算,而存储过程一般用来执行业务逻辑。

oracle 存储过程 建表插值等的更多相关文章

  1. PowerDesigner连接Oracle数据库建表序列号实现自动增长

    原文:PowerDesigner连接Oracle数据库建表序列号实现自动增长 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties — ...

  2. oracle基本建表语句

    oracle基本建表语句 2010-09-20 10:37:33|  分类: 数据库 |  标签:数据库  oracle  |字号 订阅 --创建用户create user han identifie ...

  3. Oracle day05 建表_约束

    表的创建 标准的建表语法 : CREATE TABLE [schema.] table (column datatype [DEFAULT expr], ... ); 使用子查询创建表的语法 CREA ...

  4. oracle的建表语句

    oracle数据库的建表语句,具体语法如下: CREATE TABLE tablename (column_name datatype [null,not null], column_name dat ...

  5. oracle得到建表语句

    第一种方法是使用工具,如:pl/sql developer,在[工具]--[导出用户对象]出现就可以得到建表脚本. 第二种方法是,sql语句. DBMS_METADATA.GET_DDL包可以得到数据 ...

  6. Oracle数据库建表+添加数据练习

    SQL脚本: --建表 --student表+注释 create table student( sno ) not null, sname ) not null, ssex ) not null, s ...

  7. 五、oracle基本建表语句

    --创建用户create user han identified by han default tablespaceusers Temporary TABLESPACE Temp;grant conn ...

  8. [Oracle] 简单建表语句

    // 注意表名,字段名,索引名 尽量不要带引号 CREATE TABLE FIRSTTB    ( "ID" NUMBER(8,0) not null primary key, & ...

  9. Oracle数据库建表并用SQL编程分等级

    --创建学生表create table XS_543 ( XH char(6) not null , XM varchar2(20) not null, ZYM varchar2(10), XB ch ...

随机推荐

  1. MySQL 不开启slave如何完成异地复制

    1,分批次通过远程的binlog来进行数据加载 业务新需求,线上数据库数据拉到本次,但是不允许开启slave服务,不建立直接外网的数据库账号,也不能打通数据库对外网的网络,所以我们测试环境无法通过普通 ...

  2. Java多线程编程实战指南(核心篇)读书笔记(一)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76422930冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  3. go语言】Goroutines 并发模式

    并发模式 让我们先来回顾一下boring函数的例子. func boring(msg string, c chan string) {    for i := 0; ; i++ {         c ...

  4. 实现Python代码发送邮件

    import smtplib from email.mime.text import MIMEText from email.utils import formataddr msg = MIMETex ...

  5. Mongodb中在已有Colloection插入/更新相关域值

    [{ "confident" : "no", "score" : 0.327355, "label" : "/ ...

  6. 每天一个linux命令(文件操作):【转载】which命令

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:        which  查看可执行文件的位置.       whereis 查看文件的位置.         ...

  7. pat甲级 1155 Heap Paths (30 分)

    In computer science, a heap is a specialized tree-based data structure that satisfies the heap prope ...

  8. 【C#】datetimepicker初始为空值的方法

    方法一: 在窗口初始化函数中添加: dateTimePickerEnd.Format = DateTimePickerFormat.Custom; dateTimePickerEnd.CustomFo ...

  9. 洛谷 P2828 Switching on the Lights(开关灯)

    传送门 题目大意:n*n的网格,每个网格是一个房间 都关着灯,只有(1,1)开着灯,且(x,y)有着(z,k)房间灯的开关. 问从(1,1)开始走最多点开几盏灯. 题解:搜索+骗分. 劳资的骗分天下无 ...

  10. (转)JavaMail邮件发送-发送一个文本邮件和一些问题说明

    需要下载的JAR包: JavaMail:http://www.oracle.com/technetwork/java/javamail/index.html JAF:http://www.oracle ...