㈠ sqlserver 能通过作业调用外部程序吗(如.exe)
EXEC master..xp_cmdshell 'notepad.exe'
㈡ SQL查询语句做成EXE文件
SQL不能制作exe文件,我可能跟你说一下原理:
用编程语言编写软件,可编译成EXE文件
例如:delphi 编写,先制作一个窗体:
放入数据库控件adoconnection1,设置服务器IP地址及登陆用户名和这密码。
放入数据库控件adoquery1,设置connection=adoconnection1;SQL=你的SQL句语句
放入数据库控件DataSource1,设置DataSet=adoquery1
放入数据库控件DBGrid1,设置DataSource=DataSource1
放两个按钮:一个“查询”一个“导出EXCEL”
查询按钮代码为:
adoquery1.active:=False; //表示关闭查询分析器
adoquery1.active:=True; //表示激活查询分析器,这时会显示数据出来。
导出EXCEL代码为(先建一个函数,再调用):
调用代码:
if savedialog1.execute then //执行保存文件对话框
DBtoExcel(adoquery1,savedialog1.filename) //保存文件到EXCEL
函数:
Function TfrmMain.DbtoExcel(FromDb:TDataSet;toExcelFileName:string):boolean;
var
eclApp,WorkBook:Variant;
xlsFileName:string;
i,j:integer;
begin
result:=true;
xlsFileName:=toExcelFilename;
try
//创建OLE对象Excel Application与 WorkBook
eclApp:=CreateOleObject('Excel.Application');
WorkBook:=CreateOleobject('Excel.Sheet');
except
Result:=false;
Exit;
end;
try
workBook:=eclApp.workBooks.Add;
eclapp.cells.select;
eclapp.Selection.NumberFormatLocal := '@';
for i:=0 to fromdb.fields.Count -1 do
begin
eclApp.Cells(1,i+1):=fromdb.fields[i].DisplayName;
eclApp.Columns[i+1].ColumnWidth:=12;
end;
fromdb.First ;
j:=2;
while not fromdb.Eof do
begin
for i:=0 to fromdb.FieldCount -1 do
if i>=9 then
eclApp.Cells(j,i+1):=ConvertTime(fromdb.Fields[i].AsInteger)
else
eclApp.Cells(j,i+1):=fromdb.Fields[i].AsString;
j:=j+1;
fromdb.Next ;
end;
if FileExists(xlsFileName) then DeleteFile(xlsFileName);
WorkBook.saveas(xlsFileName);
WorkBook.close;
eclApp.Quit;
except
eclApp.Quit;
result:=false;
end;
end;
编译之后,就可以得到一个exe文件! 这已经是最简化的你想得到的答案了!
㈢ sql serve能否生成一个可以执行查询的exe程序
SQL不能制作exe文件,我可能跟你说一下原理:
用编程语言编写软件,可编译成EXE文件
例如:delphi 编写,先制作一个窗体:
放入数据库控件adoconnection1,设置服务器IP地址及登陆用户名和这密码。
放入数据库控件adoquery1,设置connection=adoconnection1;SQL=你的SQL句语句
放入数据库控件DataSource1,设置DataSet=adoquery1
放入数据库控件DBGrid1,设置DataSource=DataSource1
放两个按钮:一个“查询”一个“导出EXCEL”
查询按钮代码为:
adoquery1.active:=False; //表示关闭查询分析器
adoquery1.active:=True; //表示激活查询分析器,这时会显示数据出来。
导出EXCEL代码为(先建一个函数,再调用):
调用代码:
if savedialog1.execute then //执行保存文件对话框
DBtoExcel(adoquery1,savedialog1.filename) //保存文件到EXCEL
函数:
Function TfrmMain.DbtoExcel(FromDb:TDataSet;toExcelFileName:string):boolean;
var
eclApp,WorkBook:Variant;
xlsFileName:string;
i,j:integer;
begin
result:=true;
xlsFileName:=toExcelFilename;
try
//创建OLE对象Excel Application与 WorkBook
eclApp:=CreateOleObject('Excel.Application');
WorkBook:=CreateOleobject('Excel.Sheet');
except
Result:=false;
Exit;
end;
try
workBook:=eclApp.workBooks.Add;
eclapp.cells.select;
eclapp.Selection.NumberFormatLocal := '@';
for i:=0 to fromdb.fields.Count -1 do
begin
eclApp.Cells(1,i+1):=fromdb.fields[i].DisplayName;
eclApp.Columns[i+1].ColumnWidth:=12;
end;
fromdb.First ;
j:=2;
while not fromdb.Eof do
begin
for i:=0 to fromdb.FieldCount -1 do
if i>=9 then
eclApp.Cells(j,i+1):=ConvertTime(fromdb.Fields[i].AsInteger)
else
eclApp.Cells(j,i+1):=fromdb.Fields[i].AsString;
j:=j+1;
fromdb.Next ;
end;
if FileExists(xlsFileName) then DeleteFile(xlsFileName);
WorkBook.saveas(xlsFileName);
WorkBook.close;
eclApp.Quit;
except
eclApp.Quit;
result:=false;
end;
end;
编译之后,就可以得到一个exe文件!
㈣ 我在SQL的触发器里 怎么去调用EXE
--开启xp_cmdshell
--'xp_cmdshell'
sp_configure'showadvancedoptions',1
go
reconfigure
go
sp_configure'xp_cmdshell',1
go
reconfigure
go
--开启sp_OACreate
--'sys.sp_OACreate'
sp_configure'showadvancedoptions',1;
go
reconfigure;
go
sp_configure'oleautomationproceres',1;
go
reconfigure;
go
sp_configure'AdHocDistributedQueries',1;
go
reconfigure
go
㈤ 怎样把SQL执行语句写在TXT文档后把TXT改EXE来执行有办法做到吗
哥们儿,你想多了,txt就是处理纯文本文件,exe是编译好的可执行文件,两者不相关
你要想直接执行,你可以去看看cmd的命令怎么实现,然后你操作文件的时候,保存为.bat文件就可以了
.bat文件双击可以直接执行里面写的cmd命令
然并卵,我也不会cmd操作
㈥ 如何在sql server 2008 中调用可执行程序
跟job无关,要看具体的错误提示
根据错误提示到网上搜索解决方法,可能是有些功能没有开启
xp_cmdshell可以让系统管理员以操作系统命令行解释器的方式执行给定的命令字符串,并以文本行方式返回任何输出,是一个功能非常强大的扩展存贮过程。
一般情况下,xp_cmdshell对管理员来说也是不必要的,xp_cmdshell的消除不会对Server造成任何影响。
可以将xp_cmdshell消除:
Use Master
Exec sp_dropextendedproc N'xp_cmdshell'
Go
如果需要的话,可以把xp_cmdshell恢复回来:
Use Master
Exec sp_addextendedproc N'xp_cmdshell', N'xplog70.dll'
㈦ SQL怎样连接EXE文件!!!
再去配置数据源
㈧ sqlserver触发器中如何调用外部程序
--调用外部程序或者命令 exec xp_cmdshell 'dir c:\' 注意不能调用需要用户干预才能继续运行的程序. 使用Sqlserver的xp_CmdShell扩展存储过程的一个注意: 这个存储过程只能执行Dos控制台程序,其他的Exe程序不能在Sqlserver进程空间执行. 但外部程式必须是一个自生灭的程式(即没有消息循环、不需要与用户交互),否则将会进入死循环中。
㈨ sql执行语句,调用外部程序EXE,且可以打开程序主窗口画面。
你这个问题理论上可以,但是不通过大量实践是根本无解的,SQL执行的EXE都作为一个SQLSEVER的一个线程,这个线程你只有通过task manager来查看
㈩ 如何在SQL查询调用CMD命令
在SQL查询调用CMD命令方法:
工具/原料
Mysql数据库
1、你需要先安装Mysql数据库,其实就是安装Mysql数据库服务器,然后设置环境变量path,在cmd.exe里查询查看环境变量参数的命令是:path