2010-12-10 8 views
0

私はユーザーテーブルを読み込むprocを持っています。そうすることで、ユーザーとそのマネージャ間の関連付けが行われます。私は以下の単純な選択肢を使って、各ユーザーレコードのmaangerIdを把握しています。私は、ユーザーに割り当てる必要がありますが、ユーザーが空白を取得し、managerIdの割り当てが不足しているマネージャーが表示されますが表示されます。sqlは等しい文字列比較を正しく評価していません

DECLARE @managerId INT  
SET @managerId = NULL  

IF @CorpManagerDN IS NOT NULL  
BEGIN  

IF EXISTS (SELECT 69 FROM Employees WITH(NOLOCK) WHERE CorpManagerDN = @CorpManagerDN)  
BEGIN  
    SELECT @managerId = EmployeeId FROM Employees WHERE CorpDN = @CorpManagerDN 
END  
END 

useridはうまく動作するように自己incrmentingフィールドであり、マネージャーIDフィールドは、上記ロジックが移入されています。私は

CN = Tsahalis \、ピーター NBKPVUD、OU =プリBAND、OU =アカウント、OU = BAND、DC = CORP、DC = bankofamericaようCorpManagerDN値を見ると、私は空白のマネージャーID値を取得し、時々気づきます、DC = comの

と私は

CN = Tsahalis \、ピーター NBKPVUD、OU =プリBAND、OU =アカウント、OU = BAND、DC =のようなマネージャーのCORPDN値を参照してください社員、DC =銀行窓口、DC = com

しかし、SQLの評価と一致しませんか?

+0

いただきましたSQL Serverの照合 – anivas

答えて

1
彼らは私と同じように見える

select 
case when 
    'CN=Tsahalis\, Peter NBKPVUD,OU=Pre-BAND,OU=Accounts,OU=BAND,DC=corp,DC=bankofamerica,DC=com' 
     = 'CN=Tsahalis\, Peter NBKPVUD,OU=Pre-BAND,OU=Accounts,OU=BAND,DC=corp,DC=bankofamerica,DC=com' 
    THEN 1 
    else 0 
END 
関連する問題