有没有办法从SQL Server调用aspx页面?我听说过但不知道怎么打电话? 在我的情况下,我有一个SQL作业,我需要调用aspx来执行某些任务。
答案 0 :(得分:4)
不是全部?
在我的情况下,我有一个SQL作业,我需要调用aspx来执行某些任务。
因严重虐待而被解雇。 SQL Server是一个数据库。 SQL Server作业(假设您的意思是作业)不能代替体面的调度系统。它不应该用于运行诸如邮件活动之类的东西。
修改系统以遵守SQL Server的意图,而不是通过几乎滥用所有功能来使其看起来像应用程序服务器。
答案 1 :(得分:1)
您可以创建一个.NET程序集来执行http调用并将其加载到SQL Server中,以便可以从那里访问它。
请参阅this MSDN article有关如何在SQL中创建程序集的信息,以及[this one],其中显示了如何使用T-SQL 2从这样的程序集中调用.Net函数。
这样做的一个缺点是(据我所知),没有办法参数化要调用的URL(比如在配置文件中)。每次URL更改时,您都必须在SQL中重新部署程序集。
答案 2 :(得分:0)
答案 3 :(得分:0)
有没有办法从SQL Server调用aspx页面?
是的,但请不要。它需要禁用本机SQL Server安全性以及一堆其他丑陋的东西。
以相反的方式做到这一点要好得多。让您的网页调用SQL Server以获取所需的数据。您甚至可以使用Service Broker通知进行设置,而不必使用轮询。
答案 4 :(得分:0)
编写一个小型服务来处理所述任务。将整个作业从SQL Server移动到服务中,或使用数据库表标记服务需要执行的工作。
答案 5 :(得分:0)
您可以使用
直接调用页面Declare @URL varchar(1000)
Declare @Object as Int;
set @URL='your page URL'
Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
Exec sp_OAMethod @Object, 'open', NULL, 'get',@URL,'false'
Exec sp_OAMethod @Object, 'send'