2013-09-30 44 views
0

在Vb.Net中有一個應用程序。我在Microsoft Visual Studio 2008,VB.NET,Sql Server 2005,Crystal Report上開發此應用程序。在隊列中生成代碼

並且該申請具有註冊表格。現在我的問題是 此應用程序安裝在網絡中的5臺不同計算機上。在同一時間,所有5個用戶 是開放註冊表單然後他們在同一時間點擊保存按鈕。我有一個表註冊,並有一個列(代碼)是主鍵。每當他們想保存記錄時,只有一個用戶可以保存記錄。由於主鍵違規錯誤,所有4個用戶都將回滾事務。因此,我想在隊列的基礎上生成代碼..其中用戶可以等待獲得該記錄的唯一代碼,我不想要用戶請求回滾...

回答

1

您的問題的解決方案是讓服務器生成唯一的代碼,然後交付註冊表單。

您可以用一種方式實現它,只要客戶端在註冊表單上單擊,服務器就會生成一個密鑰,可能是請求的時間戳,然後將其傳遞給可以生成該表單的客戶端。現在,由於每個請求都將以服務器隊列的方式進行處理,所生成的時間戳將會不同,因此是唯一的主鍵。

+0

你可以解釋一下更多我有一個sql服務器,其中創建了一個註冊表,並且所有用戶都可以訪問該表。和我的表有一個獨特的列(代碼)這是一個主鍵 –

+0

什麼是時間戳,它可以做什麼? –

+0

你可以給出隊列的一些例子 –