0

我想创建一个用户定义的函数/存储过程或另一个 SQL 机制,当传递一个文件名时,它会将文件内容读入一个变量以供以后处理。该机制必须在事务中工作。

我的计划是使用用户定义的函数,但是 OPENROWSET 函数不允许我将变量作为文件名传递,因此我需要在“sp_executesql”语句中执行它,并且该函数变得不确定。

我可以使用任何解决方法来解决非确定性功能吗?

4

2 回答 2

0

CLR 选项将为您提供您想要的东西(请参阅@Dewfy 的评论),但bulk insert如果您的数据允许,另一种选择是执行 a 。它也不是可扩展的,多个用户同时执行此操作的问题,但也许您的情况允许这样做?

于 2013-10-15T15:20:38.303 回答
0

是的,您可以使用 SQL Server 从开发人员提供的 DLL 调用的所谓“CLR 函数”函数。请参阅http://technet.microsoft.com/en-us/library/ms189876.aspx上的详细信息

但请注意,从服务器端处理文件不是具有重大安全问题的可扩展解决方案。

于 2013-10-15T15:07:15.100 回答