如何实现bat/cmd批处理连接SqlServer数据库查询脚本
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,这篇文章主要介绍"如何实现bat/cmd批处理连接SqlServer数据库查询脚本",在日常操作中,相信很多人在如何实现bat/cmd批处理连接SqlServer数据库查询脚本问题上存在疑惑,小编查阅
千家信息网最后更新 2025年11月06日如何实现bat/cmd批处理连接SqlServer数据库查询脚本
这篇文章主要介绍"如何实现bat/cmd批处理连接SqlServer数据库查询脚本",在日常操作中,相信很多人在如何实现bat/cmd批处理连接SqlServer数据库查询脚本问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何实现bat/cmd批处理连接SqlServer数据库查询脚本"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
代码如下:
@echo oFFtitle Zabbix监控之数据库查询bat脚本::名称:Zabbix监控脚本批处理版::描述:通过osql命令行工具查询数据库,进行一些自定义监控::支持:需要osql.exe和MSVCR71.DLL支持,可以放到脚本同级目录::时间:2015-03-20:: 进入脚本当前目录cd "%~dp0"::取得参数set "Usg=%1"::判断参数if "%Usg%"=="" goto Example::初始化连接参数set host="10.172.10.80" set db="DBname"set user="DBuser"set pd="password"::根据不同的参数执行不同的查询代码(自行调整)if "%Usg2%"=="monitor1" ( ::监控1 set sql="sql语句1") else if "%Usg%"=="monitor2" ( ::监控2 set sql="sql语句2" ) else if "%Usg%"=="monitor3" ( ::监控3 set sql="sql语句3") else if "%Usg%"=="monitor4" ( ::监控4 set sql="sql语句4")::连接数据库并执行查询(此处的for是对查询到的结果做提取,所以需要按照实际情况自行搞定。。)for /f "skip=2 delims= " %%i in ('osql.exe -S %host% -U %user% -P %pd% -d %db% -Q %sql%') do ( set result=%%i goto :result)::直接不带参数执行将提示用法:Exampleecho Example:echo=echo %~nx0 Conditionsecho=echo ------------------------------echo Script will auto exit in 5s...ping -n 5 127.1>nulexit::输出结果后自动退出:resultecho %result%使用方法:
①、验证执行:在CMD中执行【脚本.bat + 监控名】即可,比如:D:\>monitor1.bat monitor1
②、关联zabbix:zabbix中怎么设置我就不赘述了,注意下zabbix配置文件zabbix_command.conf如下添加:
UserParameter=NewMonitor[*],cmd /k c:\zabbix\NewMonitor.bat monitor1
Ps:主要是注意,需要添加一个cmd /k前置,否则zabbix执行不了,也得不到数据。
最后附几个 osql.exe 命令的实用参数及相关下载地址:
-U login_id 用户登录 ID。登录 ID 区分大小写。 -P password 是用户指定的密码。如果未使用 -P 选项,osql 将提示输入密码。如果在命令提示符的末尾使用 -P 选项而不带密码,osql 使用默认密码 (NULL)。密码区分大小写。-S server_name[\instance_name] 指定要连接的 Microsoft® SQL Server™ 2000 实例。在该服务器上指定 server_name 以连接到 SQL Server 的默认实例。在该服务器上指定 server_name\instance_name 以连接到一个已命名的 SQL Server 2000 的实例。如果未指定服务器,osql 将连接到本地计算机上的 SQL Server 默认实例。从网络上的远程计算机执行 osql 时,此选项是必需的。 -d db_name 启动 osql 时发出一个 USE db_name 语句。-Q "query" 执行查询并立即退出 osql。将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。-q "query" 启动 osql 时执行查询,但是在查询完成时不退出 osql。(注意查询语句不应包含 GO)。如果从批处理文件中发出查询,请使用 %variables 或环境 %variables%。例如: SET table = sysobjects osql /q "Select * from %table%"
到此,关于"如何实现bat/cmd批处理连接SqlServer数据库查询脚本"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
查询
脚本
数据
监控
数据库
参数
语句
密码
实例
学习
命令
服务器
提示
服务
不同
实用
代码
大小
引号
文件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
向量数据库在制药企业的应用
柳河租房软件开发
梦幻西游手游志存高远服务器
移动互联网应用软件开发协会
实验室如何搭建个人服务器
惠普服务器添加sas硬盘
chem3d数据库在哪
如何在桌面添加服务器客户端
sql写入其他数据库指令
完美服务器是谁的
如何在服务器上看是否挂上了存储
一台网络安全设备的域名是什么
芜湖软件开发app怎么收费
app软件开发解决方案专家
庆阳陇大互联网络科技有限公司
吴忠市开展网络安全应急演练
网络安全秋招
国外的网络技术发展水平
自学软件开发要学什么软件
职校网络安全和信息化
如何增强我的网络安全意识
工行软件开发中心上海
中国p2p网络技术排名
上位机软件开发平台对比
网络技术中什么是会话
.net 服务器 配置
原神ps5无法连接到服务器
数据库dbs概念
ug10启动服务器失败
asia2是什么服务器