我遇到了一个问题,我需要将 .txt 文件中的数据读取到 SQL Server 中的变量中。读取需要以编程方式执行,因为它将构成存储过程的一部分,并且不需要使用 BULK 方法,因为我无权在相关数据库上使用 BULK 方法。这可能吗?
提前致谢 :)
我遇到了一个问题,我需要将 .txt 文件中的数据读取到 SQL Server 中的变量中。读取需要以编程方式执行,因为它将构成存储过程的一部分,并且不需要使用 BULK 方法,因为我无权在相关数据库上使用 BULK 方法。这可能吗?
提前致谢 :)
你能让他们允许 Ad Hoc 分布式查询吗?然后你可以使用OpenRowset 或 OpenDatasource。
SELECT *
FROM OPENROWSET('MSDASQL',
'Driver={Microsoft Text Driver (*.txt; *.csv)};DefaultDir=c:\users\graham\desktop;',
'SELECT * FROM [data.txt];'
如果需要,这是重新配置代码:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
go
不过,这是一项费力的技术——您确定不能使用客户端代码吗?甚至,我不知道,Excel中的VBA还是什么?
G。
如果没有 SQL Server 中的这些权限,或者没有设置到文件的链接,就没有其他方法可以读取文件的内容。否则,您必须通过 SSIS 或使用编程来完成此操作。
解决方案是获得解决您的问题的权限。