如何从sql server调用aspx页面?

时间:2012-01-09 20:56:04

标签: sql sql-server sql-server-2008 sql-server-2005

有没有办法从SQL Server调用aspx页面?我听说过但不知道怎么打电话? 在我的情况下,我有一个SQL作业,我需要调用aspx来执行某些任务。

6 个答案:

答案 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)

您可以从SQL Server执行所需操作(发送带附件的电子邮件),而无需将任何程序集加载到SQL Server中。

请参阅此回答here.以及sp_send_dbmail here.的完整文档

答案 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'
相关问题