
正文
oracle建表存储过程,oracle存储过程create table
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
oracle存储过程创建表?
存储过程创建表后,在编译阶段数据库中并没有该表。这时向表中插入数据,会提示表不存在。所以,插入语句要赋值到变量里,通过e来执行。
execute immediate insert into test values (v_i); 或者你就直接建一个永久性的表(建表语句就不要写在存储过程当中了),然后每次赋值前先截断 ,这样存储过程是不会因为对象不存在而失效。
你可以认为存储过程是好多行SQL语句的结合体,也包含了临时变量,加减乘除。你的SQL语句如果用到表就要建表。用不到就不建。
实时:这个时候你必须挂上触发器,或者通过变更应用程序实现双写;这时要处理旧数据的转移就最好先封锁数据库一段时间,带数据转移完毕再解封。 非实时:这种情况可能类似一张统计表,每天更新。
MySQL 会基本遵守 max_heap_table_size 的设定,在内存不够用时,直接将表转到磁盘上存储。
相关问答
Q1: ORACLE存储过程中,可以动态创建表么
1、MySQL 会基本遵守 max_heap_table_size 的设定,在内存不够用时,直接将表转到磁盘上存储。
2、肯定是存储的内部啊,不管是oracle 还是SQL sever 或者其他。
3、没有这种动态创建表的语句。你的需求,只能是通过sql语句获取建表语句。或者使用存储过程创建这个表。
4、这样写是有问题的,动态sql不支持create 。。 select这种语法。
Q2: oracle创建一存储过程怎么做
创建存储过程:首先需要创建一个需要定时执行的存储过程。创建作业:使用DBMS_SCHEDULER创建一个作业,指定需要执行的存储过程和执行时间。例如,可以创建一个每天固定时间执行的作业。
SQL execute testjavaproc; Its a Java Oracle procedure. 我推荐的一种方法,直接使用loadjava命令远程装载并创建。
Oracle 里当然可以用select *.这里的存储过程并没有做什么事情而已,仅仅是一个select *. 你用into是将内容存放到变量中,其实没有什么不同。
包名:将要创建的包名称,该名称可以和包头所在的包名相同,也可以不同。
关于oracle建表存储过程和oracle存储过程create table的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








