当前位置:首页 » 编程语言 » oracle批量执行sql工具
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

oracle批量执行sql工具

发布时间: 2023-04-06 06:51:43

A. Oracle批量更新在存储过程中执行很慢,但单独执行很快

  • 检查被更新字段和条件岩蠢态字段是否添加索引

  • 重建索引

  • 检查数据库临时表粗源空间档槐是否已满,已满手动清空(新建临时表空间,然后重新绑定,然后删除原临时表空间)

B. oracle批量执行sql文件为什么快

因为可以把批量的sql进行预编译 放在数据库内存中 如果调用 直接向数据库发送命令就可以了

C. 如何用PL/SQL在oracle下执行多个SQL脚本

1.把所有的文件都放在同一个目录下,然后在命令行里执行命令:
c:>dir/b > d:/all.sql
把所有的sql文件名都输出到一个sql文件中。
2.用UltraEdit打开生成的sql文件,alt+C切换到column mode,给所有的行前都添加一个“@”,保存。
3.在sqlplus中执行“@d:/all.sql”

D. plsql工具在oracle数据库中使用comment语句给表加备注的时候单条执行没问题,批量多条执行就报无效字符了

因为你写的不是PL/SQL代码块而是SQL语句,比如你写这样的东西
select * from emp1;
select * from emp1
两个语句执行,就会报ORA-00911: 无效字符
应该写这样类似的
begin
execute immediate 'comment on column emp4.job is ''emp4 job''';
execute immediate 'comment on column emp4.sal is ''emp4 sal''';
end;
写成代码块,否则就只写一条SQL不要写多条

E. 如何在Oracle中一次执行多条sql语句

1、将你要执行的sql语句写入一个txt文件中;

2、修改文件后缀为.sql文件;

3、使用 “source + 路径+文件名” 注:

source与路径之间有空格。

F. 求一个oracle执行多个sql脚本文件的批处理命令

做个vbs脚本吧,创建个记事本,后缀改成.vbs,键入以下代码,保存后双击vbs文件即可。
-----------------------------------------------------
-----------------------------------------------------

Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")'创建脚本对象
Set oExec = WshShell.Exec("sqlplus -S scott/tiger @D:\a.sql")'-s是不回显,然后跟用户名和密码,之后是sql语句路径
Set oExec = WshShell.Exec("sqlplus -S scott/tiger @D:\b.sql")

-----------------------------------------------------
-----------------------------------------------------

STT@orcl->conn / as sysdba
已连接。
SYS@orcl->@d:\a.sql

SYSDATE
--------------
23-2月 -09

已用时间: 00: 00: 00.01

具体时间
-----------------
20090223 16:11:16

已用时间: 00: 00: 00.00

/*
@也可以用start替换,后面跟脚本的路径就可以了
--a.sql中的语句如下
SELECT SYSDATE FROM al;
SELECT TO_CHAR(SYSDATE,'YYYYMMDD HH24:MI:SS') 具体时间 FROM al;
*/

G. 数据库操作中如何批量执行多个sql文件

Oracle批量执行SQL文件 1:运行cmd进入命令行界面2:进入到存放批量sql的文件夹下面3:输入命令 sqlplus 数据库名/密码@数据库 按回车键4:输入spool 指定路径:\a.log 按回车键 (此步骤的主要作用就是追踪批量执行sql的日志,路径随便写,只要能找到就行,a.log可以随便起名,但是必须要.log后缀)5:@start.sql 按回车键(在批量sql文件夹下写一个文件,名字叫start.sql,其中在这个文件里面写批量sql的文件名)具体格式如下:@@sql的文件名.sql; @@sql的文件名2.sql;.......6:spool off (此时a.log中所有日志已经写入完毕)7:exit 退出sqlplus当然只有一个sql文件,但是里面有多个insert语句,数据量非常大,此时也可以在命令状态下执行,前4步是一样的,第五步就是@文件名.sql;

H. 如何用PL/SQL在oracle下执行多个SQL脚本

1、在打开的ie浏览器窗口右上方点击齿轮图标袜型,选择“Internet选项”,如下图所示:

I. 如何在Oracle中一次执行多条sql语句

有时我们需要一次性执行多条sql语句,而用来更新的sql是根据实际情况用代码拼出来的
解决方案是把sql拼成下面这种形式:
begin
update TB_VG set seq = 1, vessel_id = 'Jin14', vessel_type = 'TRACK' where batch_number = '20837' and train_id = '0233086';
update TB_VG set seq = 2, vessel_id = 'Jin14', vessel_type = 'TRACK' where batch_number = '20992' and train_id = '0233110';
end;
总结如下:
以begin开始,以end;结尾(end后的分号不能省),中间的每个sql语句要以分号;结尾
在实际编码中,发现即使这样也会有错误发生,把sql语句中的换行符替换成空格就可以了
比较稳妥的编码方式是:
1、以正常的方式编写sql,根据阅读与编写的需要,中间肯定会有换行符
2、在执行之前进行替换:strSql = strSql.Replace("r\n", " ").Replace('\n', ' ');
如果不采用这种方式,可能的异常有:
ORA-00933: SQL 命令未正确结束(如果sql没有以分号结尾)
ORA-00911: 无效字符(如果未加begin 和 end)
ORA-06550: 第x行, 第xxx列: PLS-00103: 出现符号 "end-of-file"在需要下列之一时:......(如果end后面没有;分号)
ORA-06550: 第x行, 第xxx列: PLS-00103: 出现符号 ""在需要下列之一时:......(语句之间有换行符)

J. oracle怎么用命令执行sql文件

Oracle执行外部文件:
c:>sqlplus user/pwd@db
sql>@new.sql
执行多个sql文件:
1.把所有的文件都放在同一个目录下,然后在命令行里执行命令:
c:>dir/b > d:/1.sql
会把所有的sql文件名都输出到一个sql文件中。
2.用UltraEdit打开生成的sql文件,alt+C切换到column mode,给所有的行前都添加一个"@",保存。
3.在sqlplus中执行"@d:/1.sql"
如何避免'&'字符:
sql中&可以传递参数,但有时需要插入'&',例:
SQL> select '&hello' v from al;
输入 hello 的值: hello
原值 1: select '&hello' v from al
新值 1: select 'hello' v from al
v
-----
hello
可以使用如下方法避免:
A:
SQL> select chr(38) || 'hello' v from al;
V
------
&hello
B:
SQL> set define off
SQL> select '&hello' v from al;
V
------
&hello