2012-03-15 93 views

回答

3

您確定要做到這一點在數據庫層?

您希望您的數據庫事務在您的REST請求返回時等待(並持有鎖)嗎?如果您的Web服務運行緩慢並在1分鐘後超時,會發生什麼情況?

這是可能但請再次小心使用。

在SQL Server中,有一個名爲XP_CMDSHELL的擴展存儲過程,它允許您在命令行上運行腳本。 http://msdn.microsoft.com/en-us/library/ms175046.aspx

它默認是禁用的,但你可以像這樣啓用它:

EXEC sp_configure 'show advanced options', 1 
GO 
EXEC sp_configure'xp_cmdshell', 1 
GO 
在觸發

然後,你可以調用腳本:

xp_cmdshell 'C:\path\to\php\php.exe -f C:\Path\to\your\script.php' 

如果必須做到這一點在數據庫中,我強烈建議將php腳本移植到.net語言並將其作爲CLR存儲過程執行。這會更安全,不太可能導致問題。

+0

謝謝你的回覆,你說得對,這會佔據DB的脖子,你有什麼建議? – AVEbrahimi 2012-03-16 03:16:14