2011-05-24 70 views
1

假設我有一個名爲EMPLOYEE的表,並且該表有一個名爲ManagerID的字段。該字段是EMPLOYEE表中其他經理的另一個記錄的FK。什麼是驗證沒有循環引用(遞歸外鍵)的理想方法?檢查遞歸外鍵的方法

編輯 - 讓我補充一點,每個員工都不需要經理。將會有一些沒有設置其ManagerID字段的員工記錄。

* 示例:用戶123具有用戶345作爲他們的管理員。用戶345具有用戶567作爲他們的經理。出於一些瘋狂的原因,用戶567具有用戶123作爲他們的經理。

我想檢查用戶345是否在循環引用。 *

解決這個問題的最好方法是什麼?一個簡單的查詢?業務邏輯代碼(C#/ VB.NET)?

其他人做了什麼?

示例表架構 -

-- Employee Table -- 
UserID (int - PK) 
ManagerID (int - FK to another UserID; can be null) 
+0

你有一些表結構嗎? – gbn 2011-05-24 19:53:34

回答