`
kylinsoong
  • 浏览: 239684 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Windows批处理脚步实例-创建Oracle数据库用户并向该用户添加数据

阅读更多

Windows批处理使用方便、灵活,功能强大,自动化程度高,特别是在项目测试阶段,利用批处理脚步可以方便搭建测试环境或启动单元测试等,本文分三部分:简单介绍批处理用法、一个简单例子(拷贝、删除文件)、一个较复杂例子(向Oracle数据库创建用户, 给创建的用户分配权限, 给创建的用户创建新表并添加数据)。

1 简单用法:

echo 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置,相当于java中System输出函数
echo. 输出一空白行,用来调整脚步输出显示
title 给脚步定义一个名字,相当于java Swing中控件中setTitle()函数
setlocal/endlocal 定义变量左右范围,setlocal与endlocal之间定义的变量只在setlocal与endlocal起作用,一般setlocal位于脚步开头,endlocal位于脚步结尾
set 用来用来定义变量
rd 用来删除文件夹,可以加参数/s 安静模式,/q强制删除。例如:rd /s /q C:\test 表示在安静模式下强制删除C盘test目录及其子目录及子目录中文件
del 用来删除文件,同样可以加参数/s 安静模式,/q强制删除
copy 复制文件
mkdir 创建文件夹
rem 注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改
pause

运行 Pause 命令时,将显示下面的消息:

Press any key to continue . . .

if(..) goto 根据条件,当条件满座指定跳转到标签,找到标签后,程序将处理从下一行开始的命令
if not(..) goto 同上
@ 表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
% 变量引用,引用自己定义的变量或输入变量

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 一简单脚步例子simple.cmd

本例子完成功能:删除D:\dev-tools\jboss-eap-4.3\jboss-as\server\production\deploy\ear-war\app.war文件夹下WEB-INF目录及目录下文件,后重新创建WEB-INF目录,并把D:\dev-test\cmd目录下web.xml拷贝到新创建的WEB-INF目录中,如下:

@echo off
echo -------------------------------------------------------------------------
echo simple test
echo -------------------------------------------------------------------------
title=simple test
echo.
setlocal

rem # define two param
set RES_PATH=D:\dev-test\cmd
set DES_PATH=D:\dev-tools\jboss-eap-4.3\jboss-as\server\production\deploy\ear-war\app.war

rem ###############################
rem # deal destination

del /s /q %DES_PATH%\WEB-INF\*
rd /s /q %DES_PATH%\WEB-INF
mkdir %DES_PATH%\WEB-INF

echo.

copy %RES_PATH%\web.xml %DES_PATH%\WEB-INF


endlocal

echo.
pause

运行结果:



 

 3 向Oracle数据库创建用户, 给创建的用户分配权限, 给创建的用户创建新表并添加数据

先给出创建用户和添加数据的sql

createUser.sql:

define TESTUSR=&1
define TESTPASSWD=&2
define TABLESPACE=&3
define TESTUSERCONNECTSTRING=&4

create user &TESTUSR identified by &TESTPASSWD default tablespace &TABLESPACE;

--Grant necessary permissions
grant resource to &TESTUSR;

grant CREATE SESSION to &TESTUSR;
grant ALTER SESSION to &TESTUSR;
grant QUERY REWRITE to &TESTUSR;
grant UNLIMITED TABLESPACE to &TESTUSR;


connect &TESTUSERCONNECTSTRING
@add_data.sql

exit;

 add_data.sql:

create table student(   
name varchar2(20),   
age number(3)   
);   
  
insert into student values('Kobe Bryant',32); 

 导入oracle_import.cmd:

@echo off
echo -------------------------------------------------------------------------
echo TEST TABLE CREATE ORACLE
echo -------------------------------------------------------------------------
echo.
title=TEST TABLE CREATE
setlocal

set usage=createIPCDB.cmd [systemUser] [systemPassword] [SERVICENAME] [testUser] [testPassword] [tableSpaceName] [DBSERVER] [DBPORT]
rem # createIPCDB.cmd system ADMIN orcl newUser ADMIN tableSpace songzhiqi-dt 1521


if "%1"=="" goto Exit
set SYSTEMUSER=%1
echo [SYSTEMUSER] %SYSTEMUSER%

if "%2"=="" goto Exit
set SYSTEMPASSWD=%2

if "%3"=="" goto Exit
set SERVICENAME=%3
echo [SERVICENAME] %SERVICENAME%

if "%4"=="" goto Exit
set TESTUSR=%4
echo [TESTUSR] %TESTUSR%

if "%5"=="" goto Exit
set TESTPASSWD=%5

if "%6"=="" goto Exit
set TABLESPACENAME=%6
echo [TABLESPACENAME] %TABLESPACENAME%

if "%7"=="" goto Exit
set DBSERVER=%7
echo [DBSERVER] %DBSERVER%

if "%8"=="" goto Exit
set DBPORT=%8
echo [DBPORT] %DBPORT%

set SYSTEMCONNECTSTRING=%SYSTEMUSER%/%SYSTEMPASSWD%@//%DBSERVER%:%DBPORT%/%SERVICENAME%
set TESTUSERCONNECTSTRING=%TESTUSR%/%TESTPASSWD%@//%DBSERVER%:%DBPORT%/%SERVICENAME%

echo.
echo %SYSTEMCONNECTSTRING%
echo %TESTUSERCONNECTSTRING%

set RUN_SCRIPT=sqlplus -l -s %SYSTEMCONNECTSTRING% @createUser.sql %TESTUSR% %TESTPASSWD% %TABLESPACENAME% %TESTUSERCONNECTSTRING%


echo.
echo %RUN_SCRIPT%



%RUN_SCRIPT%

goto END

exit

:Exit
echo RUN LIKE:
echo %usage%
endlocal
pause
exit

:END
echo.
endlocal

echo.
pause

 注意:表空间提前创建,运行结果如下:



 

 

  • 大小: 15.7 KB
  • 大小: 9.1 KB
0
0
分享到:
评论

相关推荐

    VC数据库编程实例-ORACLE数据库VC数据库编程实例

    本实例主要关注如何使用VC++与Oracle数据库进行交互,实现数据的存取、查询、更新和删除等操作。Oracle数据库是一个关系型数据库管理系统,提供了丰富的API和工具,如OCI(Oracle Call Interface)和ODBC(Open ...

    任务计划+批处理实现Oracle数据库的定时备份

    本文将详细介绍如何利用任务计划和批处理脚本来实现Oracle数据库的定时备份。 一、任务计划(Task Scheduler) Windows的任务计划程序允许用户设置定期执行特定任务,如运行一个批处理文件。创建任务计划的过程...

    oracle数据库自动恢复数据库批处理

    标题中的“Oracle数据库自动恢复数据库批处理”是指在Oracle数据库管理系统中,通过预先设定的脚本或批处理程序实现数据库的自动恢复。这通常涉及到数据库的备份、日志管理、故障检测以及数据恢复等关键环节,是...

    oracle数据库备份的批处理

    本文将深入探讨如何创建Oracle数据库的批处理备份。 在Oracle数据库中,备份主要分为物理备份和逻辑备份。物理备份通常指的是利用RMAN(恢复管理器)工具来创建数据文件、控制文件、重做日志等的拷贝;逻辑备份则是...

    批处理文件启动Oracle服务

    总的来说,批处理文件启动Oracle服务是一种实用的解决方案,它结合了Windows批处理脚本的便利性和Oracle数据库服务管理的灵活性。通过合理编写和运用批处理文件,我们可以实现数据库服务的高效管理,提升运维效率。

    关闭数据库批处理

    Oracle数据库批处理关闭服务,启动也可以通过找到服务做类似文件

    oracle实验三 Oracle数据库的创建和管理

    ### Oracle数据库的创建与管理知识点总结 #### 一、Oracle数据库概述 Oracle数据库是一种高性能的关系型数据库管理系统(RDBMS),被广泛应用于企业级应用程序的数据存储与管理。它提供了强大的数据处理能力、高度...

    Oracle数据库实验.doc

    * 手工创建数据库:我们学习了手工创建数据库的步骤,包括创建批处理文件、建立必需的各级目录、登录到数据库等。 本实验报告涵盖了 Oracle 数据库的基本操作、体系结构、存储结构、数据库创建和管理等方面的知识点...

    oracle启动关闭的批处理命令

    对于Oracle数据库,我们可以创建两个批处理文件,一个用于启动,另一个用于关闭。 1. **启动Oracle数据库的批处理命令**: - 首先,我们需要知道Oracle数据库服务的名称。通常,它以"ORACLE SID"_DBNAME的形式命名...

    Oracle数据库的创建和管理 Oracle数据库实验报告.pdf

    Oracle数据库的创建通常涉及多个步骤,包括规划数据库的结构、配置初始化参数文件、创建控制文件、数据文件、重做日志文件等。 **1.1 使用DBCA创建数据库** DBCA是Oracle提供的一种图形化工具,它简化了数据库的...

    oracle 默认数据库 orcl 启动 关闭 批处理

    在提供的压缩包中,我们有两个批处理文件:`Start Oracle.bat`和`Stop Oracle.bat`,分别用于启动和关闭Oracle数据库实例。 1. **启动Oracle数据库**: - `Start Oracle.bat`文件很可能包含了启动Oracle数据库实例...

    Oracle数据库管理

    - **数据库的字符集**: Oracle数据库在创建时需要指定字符集,这对后续的数据存储和检索至关重要。 - **字符集文件及字符支持**: Oracle提供了多种字符集文件,支持不同的语言和地区。 - **NLS_LANG的设置与影响**: ...

    批处理的oracle导出备份写法

    Oracle数据库的导出备份通常使用的是Oracle的数据泵工具(expdp),它允许我们创建数据的逻辑备份,这些备份可以是整个数据库、特定用户、表或目录对象。批处理脚本则将这一过程自动化,避免了手动操作的繁琐。 ...

    WMB 使用Compute节点连接Oracle数据库实例

    4. **JDBC驱动**:确保已经安装了适用于Oracle的JDBC驱动,比如ojdbc.jar,并将其添加到WMB的类路径中,以便WMB能够识别并使用Oracle数据库。 5. **SQL操作**:在Compute节点内部,可以编写Java代码来执行SQL查询、...

    C#连接oracle数据库及根据表中数据生成xml

    - 解析Oracle数据:使用C#的`System.Data.SqlClient`命名空间,从Oracle数据库中检索数据并加载到DataTable或DataSet中。 - XML序列化:通过`XmlSerializer`类将DataTable或DataSet转换为XML格式。设置好根节点、...

    ORACLE数据库开发

    本文将深入探讨Oracle数据库开发中的关键概念和技术,包括数据库创建、视图与表的建立,以及相关的示例。 首先,Oracle数据库的创建是整个系统的起点。在Oracle中,我们通过“CREATE DATABASE”命令来创建一个新的...

    Oracle数据库系统应用实例集锦与编程技巧

    本资源包“Oracle数据库系统应用实例集锦与编程技巧”旨在为用户深入理解和掌握Oracle数据库的应用提供一系列实例和实用技巧。 首先,我们要了解Oracle数据库的基础知识。Oracle数据库系统基于SQL(结构化查询语言...

    Oracle数据库启动与停止bat文件

    在Windows操作系统环境下,我们可以通过编写批处理(bat)文件来简化Oracle数据库的启动和停止操作,无需每次都通过计算机服务管理界面进行操作。下面我们将详细介绍如何创建和使用这样的bat文件。 一、Oracle...

    oracle导入表导入数据实例

    在Oracle数据库管理中,数据导入是一项常见的操作,用于将外部数据加载到数据库中。本实例主要探讨如何使用Oracle的数据导入工具——SQL*Loader,通过控制文件(`.ctl`)来执行这一过程。以下是对"oracle导入表导入...

Global site tag (gtag.js) - Google Analytics