2012-05-12 23 views
0

我有一個程序,爲其用戶使用許可證系統。現在我的數據庫中有一個整數列LicenceDays,並且我希望每24小時減少1個值。例如,讓我們說例如我的LicenceDays是4,24小時後更新數據庫,它將在3.更新x小時後的數據,在Sql Server /或Wpf C#

現在我不明白我會怎麼做。我從哪說起呢?我可以在Sql Server本身實現這一點,還是可以在WPF C#程序中使用某種代碼?我正在使用LINQ to SQL來訪問我的數據庫。

任何幫助將不勝感激,謝謝。

+1

爲什麼沒有許可證的開始日期。從許可開始日期減去當前日期,如果它小於x天數,則已過期... –

+0

您可以創建一個sql server存儲過程並通過sql server作業計劃它 –

回答

0

由於這是一個反覆出現的SQL任務,可能最簡單和最可維護的解決方案是在SQL Server本身內創建作業。您可以編寫將「LicenseDays」減1的SQL語句,並計劃每24小時運行一次。您甚至可以使用SQL Server Management Studio中的GUI來安排,更新和啓動/停止此操作。在SQL Server作業

更多信息:http://msdn.microsoft.com/en-us/library/ms190268.aspx

+0

嗨,我一直在檢查這個,我不認爲他們在SQL 2008上有SQLServer作業,因爲這是我運行的。]所以我不能實現這一點,除非我有SQL 2012? –

+0

@MarkMackanga他們在SQL 2008中有工作。您是否正在運行Management Studio?它在SQL Server代理 - >作業下。這確實假設你已經安裝了SQL Server代理,儘管... – McGarnagle

+0

好吧,我剛剛發現SQL Express沒有代理。所以至少現在我知道我需要什麼,所以我想找一個解決方法,謝謝指出我在正確的方向。 –