2012-01-26 19 views
0

我的MVC3應用程序正在使用SQL Server 2008來存儲數據。特別是 - 支持票據管理數據。SQL Server 2008中的內置調度程序功能

我在一個數據庫中的表 - 門票。

我正在評論使用SQL Server功能實現定期票證註冊的可能性。

是否有內置的SQL Server功能,可以讓我安排一個例如每週一次在數據庫表中創建一行?

回答

1

我會用SQL Server Agent和運行Transact-SQL Job Step

請注意,該代理作爲特定帳戶下的服務運行,該特定帳戶需要權限才能執行您所需的任何操作。

+0

不幸的是,如果您使用Express版本的SQL Server,SQL代理將無法正常工作。太糟糕了。 – djangofan

0

您可以輕鬆地使用Windows SchedTask控制面板安排一個批處理文件定期運行:

在批處理文件創建一個SQL字符串,像這樣:

SET SQLSTRING=INSERT INTO Persons^ 
VALUES (4,'Nilsen', 'Johan', 'Bakken 2',^ 
'Stavanger'); 

然後,只需啓用延遲擴展並使用這樣的:

sqlcmd.exe -b -S localhost -E -d !DBNAME! -Q "!SQLSTRING!" -W 
1

不幸的是,你還沒有提到你的SQL Server版本。如果你有Express,那麼就沒有內置的調度程序,所以你需要使用Windows調度程序來運行一個批處理文件或者其他連接到SQL Server的程序。

如果您有任何其他版本,那麼您有SQL代理程序,它是一個完整的調度程序,支持包括運行SQL語句在內的任何任務。