SQL*PLUS中批量执行SQL语句

今天由于工作的需要,要在CMD中批量执行大量的SQL语句,对于Oracle学习还处在入门阶段的我,只能硬着头皮到处去寻找资料(主要是网络资料,也包括自己的电子书),最后将所有的SQL语句一次性的执行完成。

首先,将要执行的所有的SQL语句,全部写入某个sql文件当中。例如f:\test.sql;

然后,通过通过sqlplus连接到数据库;如:

SQL> sqlplus test/test@orcl;

再执行如下命令:

SQL> @f:\test.sql;  @+地址

... ...

就这样执行成功,原来这么的简单。

另外,在Oracle中执行插入语句中,字符串中含有转义字符,例如&的时候,是不能直接进行操作,在&后的会当成变量来对待,因此不符合我们的要求。其具体为:

想要往表A(ID,NAME)插入数据时候,如果想插入的数据为:(1,'tom&jim')。此时不能直接下面的语句:

SQL>Insert Into A values('1','tom&jim');

要满足我们的要求有两种方法:

1、将&用ASCII字符代替,如:

SQL>Insert Into A Values('1','tom'||chr(38)||'jim');

2、将oracle中的define设置为off,即可,如:

SQL>set define off;

SQL>Insert Into A values('1','tom&jim');

这样也能成功执行。

SQL*PLUS中批量执行SQL语句的更多相关文章

  1. PL/SQL中批量执行SQL脚本(不可把所有的语句都复制到New SQL Windows)

    PL/SQL中批量执行SQL脚本,不可把所有的语句都复制到New SQL Window,因为这样会导致缓冲区过大而进程卡死! 最好的办法是将要执行的SQL脚本存放到指定文件中,如C:\insert.s ...

  2. c#实现用SQL池(多线程),定时批量执行SQL语句 【转】

    在实际项目开发中,业务逻辑层的处理速度往往很快,特别是在开发Socket通信服务的时候,网络传输很快,但是一旦加上数据库操作,性能一落千丈,数据库操作的效率往往成为一个系统整体性能的瓶颈.面对这问题, ...

  3. PHP mysqli 增强 批量执行sql 语句的实现代码

    本篇文章介绍了,在PHP中 mysqli 增强 批量执行sql 语句的实现代码.需要的朋友参考下. mysqli 增强-批量执行sql 语句 <?php //mysqli 增强-批量执行sql ...

  4. c#实现用SQL池(多线程),定时批量执行SQL语句

    在实际项目开发中,业务逻辑层的处理速度往往很快,特别是在开发Socket通信服务的时候,网络传输很快,但是一旦加上数据库操作,性能一落千丈,数据库操作的效率往往成为一个系统整体性能的瓶颈.面对这问题, ...

  5. 批量执行sql语句

    基本使用 $sqls="sql语句1;sql语句2;sql语句n"; 或 $sqls="insert into xx;";  $sqls.="inse ...

  6. mysqli扩展库应用---批量执行sql语句

    1, mysqli批量执行sql语句.基本语法: $sqls=”sql1;sql2;………” mysqli::multi_query($sqls); 同一个$sqls要么是增删改语句集合,要么是查询语 ...

  7. JDBC连接MYSQL,批量执行SQL语句或在执行一个SQL语句之前执行一个SQL语句

    conn = MysqlJdbcUtils.getConnection(); Statement ps=conn.createStatement(); ps.addBatch("trunca ...

  8. 批量执行SQL文件

    原文:批量执行SQL文件 摘要:很多时候我们在做系统升级时需要将大量的.sql文件挨个执行,十分不方便.而且考虑到执行顺序和客服的操作方便性,能不能找到一种简单的方法来批量执行这些sql文件呢? 主要 ...

  9. jdbc批量执行SQL insert 操作

    package com.file; import java.io.BufferedReader; import java.io.FileReader; import java.util.ArrayLi ...

随机推荐

  1. dataStructure@ Check whether a given graph is Bipartite or not

    Check whether a given graph is Bipartite or not A Bipartite Graph is a graph whose vertices can be d ...

  2. SQL2005查询所有表的大小

    IF NOT EXISTS (SELECT * FROM [tempdb].sys.objects WHERE object_id = OBJECT_ID(N'[tempdb].[dbo].[tabl ...

  3. My97datepicker设置后一个日期大于前一个日期

    <@e.text label="开始时间" name="mtpiStratTime" required="true" class=&q ...

  4. vs之Nuget

    1.http://msdn.microsoft.com/zh-cn/magazine/hh547106.aspx 2.在Nuget控制台中安装特定版本: Install-Package <程序包 ...

  5. js方法重载

    test(5); test(5,5); function test(a){ alert(a); } function test(a,b){ alert(a+b); } NaN和10,说明第二个覆盖了第 ...

  6. ALV 插入可编辑的空行

    在FCAT 中 设置需要的字段为 可以编辑,然后LOOP 显示 ALV 的内表,将不需要的行设置为 不可编辑 1. 在ALV用的内表中添加控制 style 的 内表 TYPES:BEGIN OF TY ...

  7. 关于 mysql.test 数据库

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  8. cocos2d-x Animation

    转自:http://codingnow.cn/cocos2d-x/810.html 这一篇来学习怎么使用cocos2d-x引擎播放帧动画,就是把一帧一帧的图片像电影那样显示出来.1. 首先来了解一下相 ...

  9. DHCP Option 60 的理解

    原文地址: http://blog.163.com/chenqioulin_1983/blog/static/83216232010109104430251/   首先还是看看RFC咋说的吧.DHCP ...

  10. 【Android开发】完美解决Android完全退出程序

    背景:假说有两个Activity, Activity1和Activity2, 1跳转到2,如果要在2退出程序,一般网上比较常见的说法是用 System.exit(0) 或是 android.os.Pr ...