.如何用.bat调用db2数据库的多个sql文件

.如何用.bat调用db2数据库的多个sql文件,第1张

@ECHO off

@title Hr数据库部门、人员信息同步

SET user=hrmis

SET password=hrmis

SET serverip=1921680110

SET db=HRDBG

ECHO 当前使用的数据库连接:服务器IP:%serverip% 数据库:%db% 用户名:%user% 密码: %password%

ECHO 请确认数据库连接设置正确,如果不正确请点窗口右上角×退出!!!!!!!

pause

set t0=%TIME:~0,1%

set logTIME=_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

if "%t0%"==" " set logTIME=_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%_0%TIME:~1,1%%TIME:~3,2%%TIME:~6,2%

set logfile0=Mas%logTIME%log

ECHO 脚本程序开始运行时间:[%DATE:~0,10% %TIME:~0,8%]

ECHO 脚本程序开始运行时间:[%DATE:~0,10% %TIME:~0,8%] >> %logfile0%

ECHO 当前使用的数据库连接:服务器IP:%serverip% 数据库:%db% 用户名:%user% 密码: %password% >>%logfile0%

ECHO updatesql\1、部门、人员信息同步sql

ECHO updatesql\1、部门、人员信息同步sql>>%logfile0%

osql -U %user% -P %password% -S %serverip% -d %db% -i updatesql\1、部门、人员信息同步sql>>%logfile0% -n

ECHO updatesql\2、考勤数据导入sql

ECHO updatesql\2、考勤数据导入sql>>%logfile0%

osql -U %user% -P %password% -S %serverip% -d %db% -i updatesql\2、考勤数据导入sql>>%logfile0% -n

ECHO updatesql\3、加班重新计算sql

ECHO updatesql\3、加班重新计算sql>>%logfile0%

osql -U %user% -P %password% -S %serverip% -d %db% -i updatesql\3、加班重新计算sql>>%logfile0% -n

ECHO [%DATE:~0,10% %TIME:~0,8%]处理成功!退出系统重新登陆,获取最终结果。。。。。。

ECHO [%DATE:~0,10% %TIME:~0,8%]完成。 >> %logfile0%

pause

以上是BAT示范文件,保存为BAT格式打开

通用命名约定 (UNC) 验证方法也称为“UNC Passthrough 验证”,它确定获得远程计算机上 UNC 共享访问使用的凭据。从 IIS 60 开始,UNC 验证使用以下方法查看请求用户和配置数据库 UNCUserName 和 UNCPassword 属性中存储的凭据,以确定传送到具有 UNC 共享的计算机上的凭据:

如果指定了 UNCUserName(非空)并且 UNCPassword 有效,则将配置数据库用户凭据作为访问的用户标识发送到远程共享。如果指定了 UNCUserName(非空)但是 UNCPassword 无效,则向客户端发送“500 内部服务器错误:用户名或密码无效”消息。

如果 UNCUserName 为空,则将请求用户的凭据(用于已验证请求的一组验证的凭据或用于匿名请求的 IUSR_computername 凭据)作为访问的用户标识发送到远程共享。

注意 不再将 UNCAuthenticationPassthrough 配置数据库项用于 UNC 验证。

参考资料:

>

isql -U sa -P password -d master -Q"BACKUP DATABASE [databasename] to disk='D:\DB\databasename_%date:~0,4%%date:~5,2%%date:~8,2%0400BAK'"

这是sql2000的,你试一下,一般能通用。

注意用户和密码需要管理员权限 修改一下,还有数据库名修改一下

原理:

使用"C:\Program Files\PostgreSQL\90\bin\psqlexe"来建立到PostgreSQL数据库的连接后执行SQL语句。

(建立数据库连接的方法,可以参考C:\Program Files\PostgreSQL\90\scripts\runpsqlbat文件。)

一,执行SQL语句

SET DB_NAME=TEMP

"C:\Program Files\PostgreSQL\90\bin\psqlexe" -h localhost -U postgres -d %db_NAME% -p 5432 -w -c "SELECT FROM TABLE1;"

二,执行SQL脚本文件

在SQL语句比较复杂时,可以先把SQL语句保存到文件中,然后用psqlexe执行该文件。

@rem move to the current file's directory

%~d0

CD %~dp0

@rem excute a sql script file to create database

"C:\Program Files\PostgreSQL\90\bin\psqlexe" -h localhost -U postgres -d postgres -p 5432 -w -f resource/db/createdbsql

如果有多个SQL脚本文件(如:asql, bsql, csql),可以新建一个SQL脚本文件(indexsql)来调用这多个脚本文件,这样在BAT中只需要一个命令语句,而不需要多次复制相似的命令。新建indexsql文件的内容可以是:

\i resource/db/createdbsql

\i resource/db/createspsql

\i resource/db/insertdatasql

备注:

在CMD窗口中输入 "C:\Program Files\PostgreSQL\90\bin\psqlexe" - 可以查找psql的相关命令。

建立了数据库连接后,可以用help命令,或者\ 查找sql命令。

1

set zip_path="C:\Program Files (x86)\HaoZip"

rem 注意要加引号。由于之前没加引号,后面找不到压缩命令,所以不压缩。

2

注释说明压缩程序是什么和参数

3

后面连个词都没有,直接一堆%就行了,就是变量代表的命令。

以上就是关于.如何用.bat调用db2数据库的多个sql文件全部的内容,包括:.如何用.bat调用db2数据库的多个sql文件、执行网络主机上的bat文件时,cmd提示UNC路径不受支持,windows启动默认路径、批处理(.bat)文件如何实现sql server 2008 数据库备份请大神赐代码,最好带上注释,金币大大的有!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10166895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存