我有一个动态查询脚本。我想执行查询并将其结果输出到文件。我似乎无法弄清楚如何输出“执行”语句的结果。
示例代码如下。
declare @sql_text varchar(300)
select @sql_text = select 1
exec (@sql_text) > output.txt
提供更多背景信息。我的实际脚本将循环遍历动态查询并输出到不同的文件(动态文件名也是如此)。
您可以通过-o参数将输出文件设置为isql客户端以执行SQL。这将把输出发送到任何SQL的文件,即普通或动态SQL。
所以将SQL放在输入文件中然后运行
isql -U user - P password -S -i input_filename -o output.txt
如果没有启用xp_cmdshell这是一个潜在的安全问题(因为它允许O / S命令作为运行Sybase数据服务器的用户运行),您无法直接从ASE内部调用操作系统文件,因此在大多数站点中都禁止这样做。