`

Oracle & SQLServer 脚本批量执行方法

 
阅读更多

    在工作中,有的项目使用Oracle数据库,有的使用SQL SERVER数据库,当一部分功能开发完毕后,提交测试人员测试,当提交的sql 脚本比较多的时候(例如30个sql脚本),测试人员反馈一个一个执行比较麻烦耗时,希望能批量一次性执行完所有脚本。

 

所以花时间分别研究了一下Oracle和Sql Server 批量执行多脚本的方法,如下分别描述。

 

Oracle:

Oracle处理方式是写一个总的sql,用@的方式把所有sql加上,只要执行总的sql即可。

 

1.准备数据,有两个脚本1.create_view.sql 和 2.fn_test_sj.sql。(以两个脚本为例,多脚本以此类推)。

 

2.一般会把需要执行的sql脚本放在一个文件夹里,好调用管理,例如放在prepareSql文件夹下。

 

3.和prepareSql文件夹同一层级,新建总的调用的sql脚本------ allSql.sql,里面写调用语句,如下:

         

@prepareSql/1.create_view.sql
@prepareSql/2.fn_test_sj.sql

 

4.在Oracle的PL/SQL工具的command 窗口中,输入【@】,然后按下【回车键】,选中allSql.sql执行,达到了批量执行的目的。

 

 

 

SQL Server 2008:

SQL Server没有像Oracle那样,可以在command窗口使用@的方式批量调用,不过,SQL SERVER提供了

SQLCMD的命令,实现批量调用的目的。

 

1.准备数据,两个脚本,1.test.sql,2test.sql,分别为两个简单的建表语句。

1.test.sql

use master
go

create table test_sj
(
  id int,
  name varchar(100)
)
go


2.test.sql

use master
go

create table test_sj1
(
  id int,
  name varchar(100)
)
go

 

2.新建一个文本,里面编写调用脚本:
 
@ECHO OFF
rem auth by sj
rem *************数据库配置,根据实际使用数据库修改

set ip=192.168.18.203\home 
set user=sa 
set passwd=AX8bst

rem *************数据库配置,根据实际使用数据库修改


echo *********************开始执行!*******************************

sqlcmd  -m0 -r 1 -S %ip%  -U %user% -P %passwd%  -i 1.test.sql
sqlcmd  -m0 -r 1 -S %ip%  -U %user% -P %passwd%  -i 2.test.sql
           

echo *********************执行完毕!*******************************
pause>nul
 
 
将脚本另存为.bat格式,双击即可执行,看一下效果:
 
 
 
如果执行有问题,控制台会报错,因为脚本中是建表语句,在执行一遍,就可以看到错误,如图:
 
 
具体SQLCMD的命令的参数可以在cmd窗口输入 C:\Users\tusiji>sqlcmd -?   查看,或者求助SQL SERVER官方文档,查看具体。
 
 
 
 
  • 大小: 21.5 KB
  • 大小: 5.7 KB
  • 大小: 14.5 KB
  • 大小: 21.5 KB
分享到:
评论

相关推荐

    SQL脚本批量执行,方便大量的SQL脚本执行。

    综上所述,批量执行SQL脚本是数据库管理员日常工作中不可或缺的一部分,通过选择合适的工具和方法,可以显著提升工作效率,同时保证数据的准确性和一致性。在实际操作中,应根据具体环境和需求灵活选择和应用。

    批量执行sql脚本文件,支持oracle、sql server2005

    批量执行sql脚本的web工程,通过myeclipse导入工程即可,经过测试可以批量导入oracle与sql server2005的脚本,而且是web页面的向导式执行*.sql脚本文件 支持事务,任何执行过程出现异常,均会提示并且回滚操作,页面...

    批量执行SQL脚本

    2. **工具选择**:有许多工具可以用来批量执行SQL脚本,如MySQL的`mysql`命令行客户端,SQL Server的`sqlcmd`,Oracle的`sqlplus`,或者通用的数据库管理工具如Navicat、DBeaver等。这些工具通常支持读取文本文件中...

    批量执行sql脚本

    总的来说,批量执行SQL脚本是一种高效且实用的方法,尤其在处理大量数据库操作时。了解如何编写和使用SQL脚本,以及选择合适的工具进行批量执行,对于数据库管理和开发人员来说是必不可少的技能。通过熟练掌握这一...

    ORACLE中BLOB字段导入到SQL SERVER中的IMAGE字段

    本篇文章将详细探讨如何将ORACLE数据库中的BLOB(Binary Large Object)字段导入到SQL SERVER中的IMAGE字段,这通常涉及到数据转换、数据迁移以及可能的数据类型兼容性问题。 首先,让我们了解BLOB和IMAGE字段的...

    sql脚本批量执行工具

    SQL脚本批量执行工具是一种高效、实用的数据库管理软件,专为DBA(数据库管理员)和开发人员设计,用于一次性处理多个SQL脚本文件。在数据库维护、数据迁移或更新过程中,这种工具能够显著提高工作效率,减少手动...

    SQLSERVER(可修改IP和端口port)和ORACLE生成批量执行脚本的方法【多个文件批量处理】SqlFileTest.java

    SQLSERVER(可修改IP和端口port)和ORACLE生成批量执行脚本的方法批处理 sql版本把控制台的内容复制出来,粘贴到bat文件中,单击执行就ok oracle版本把控制台生成的脚本在,plsql中用新建个“命令窗口”,把控制台的...

    sqlserver表数据插入到oracle表中的一种实现方式(表结构相同)

    一时也想不到怎么把sqlserver表数据复制到oracle中,于是请教公司主管,用存储过程实现可以查询出所有数据的insert脚本,在oracle库中创建好表,直接把sqlserver中的insert脚本复制到oracle执行就可以批量添加了。

    oracle、sql数据库批量建索引

    在批量操作时,可以结合T-SQL和存储过程,或者使用SQL Server Management Studio(SSMS)的脚本功能来生成和执行批量操作的脚本。 然而,创建索引并非总是有益的。虽然索引加快了查询速度,但它们也会占用磁盘空间...

    SQLServer数据库导入Oracle

    在IT行业中,数据库迁移是一项常见的任务,特别是在不同的数据库系统之间,如从SQL Server迁移到Oracle。这个过程涉及多个步骤和注意事项,确保数据的完整性和一致性。以下是对标题和描述中所述知识点的详细说明: ...

    Oracle批处理:使用C# 自带Oracle驱动一次执行多条Sql语句

    Oracle批处理是数据库操作中提高效率的重要手段,尤其是在C#编程环境下,利用Oracle的数据驱动进行批处理,可以显著提升大量SQL语句执行的速度。本文将深入探讨如何在C#中利用Oracle自带的驱动来实现批处理,以一次...

    用Java实现SQL_Server到Oracle数据迁移

    - 导入JDBC驱动:对于SQL Server,通常使用`com.microsoft.sqlserver.jdbc.SQLServerDriver`;对于Oracle,使用`oracle.jdbc.driver.OracleDriver`。 - 建立数据库连接:通过`DriverManager.getConnection()`方法...

    批量执行SQL文件工具

    在IT行业中,数据库管理和维护是...用户只需指定SQL脚本的路径,配置相应的数据库连接信息,就可以启动批量执行过程。通过熟练掌握这类工具,IT专业人员可以更加高效地管理和维护数据库,从而提高整体项目的运行效率。

    E_Sql.rar_执行sql_批量执行SQL

    "E_Sql.rar_执行sql_批量执行SQL" 这个压缩包文件显然提供了批量执行SQL脚本的功能,这对于数据库管理员、开发人员以及数据分析师来说是非常实用的工具。让我们深入探讨一下这个主题。 批量执行SQL意味着能够一次...

    批量执行SQL文件

    许多数据库管理工具,如MySQL Workbench、Navicat、SQL Server Management Studio (SSMS) 和 Oracle SQL Developer,都提供了批量执行SQL脚本的功能。用户只需导入.sql文件,然后工具会逐行解析并执行里面的SQL语句...

    批量执行SQL脚本程序(SqlScriptHelper)

    无论你使用的是MySQL、PostgreSQL、SQL Server、Oracle还是其他数据库,只要脚本语言是SQL,它都能执行。这极大地拓宽了其适用范围,使得开发人员无需担心特定数据库环境的限制。 3. **错误处理**:当某个脚本执行...

    SQLDeveloper工具/MySQL/SQLServer驱动程序

    SQLDeveloper是一款功能强大的数据库开发工具,由甲骨文公司(Oracle)开发,支持多种数据库管理系统,包括Oracle、MySQL和SQL Server。在这个特定的压缩包中,我们关注的是它与MySQL和SQL Server驱动程序的整合,这...

    SQLServer 2005移植到oracle前提

    1. 批量插入:通过编写脚本或使用ETL工具(如SSIS、Oracle Data Pump等),将SQL Server的数据批量插入到Oracle中。 2. 数据转换:处理数据类型不匹配、字符集转换等问题,确保数据正确导入。 3. 分批迁移:对于大...

Global site tag (gtag.js) - Google Analytics