以下のように、HashBytes を使用して、SQL で複数のフィールドを組み合わせてハッシュ キーを作成しました。
hashbytes('MD5', PID+PNumber+CONVERT(VARCHAR(50),cast(datestamp as binary)) +CONVERT(VARCHAR(50), TCount)+OCD+OSeqNbr+TID) AS VARBINARY(80)
上記のすべてのフィールドのデータ型は以下のとおりです
PID - nvarhcar(30)
PNumber - nvarhcar(30)
datestamp - Datetime
TCount - Int
OCD - varhcar(2)
OSeqNbr - varhcar(10)
TID - nvarhcar(100)
しかし、値を取得するには C# と同等の関数が必要です。これにより、フィールド値に対して C# コードを使用して値を取得し、値を sql に渡して、値をハッシュ キー列と比較できます。
以下のようにして、ハッシュキーのバイナリ値に相当する byte[] 値を取得しようとしました。ただし、SQL ハッシュ キー値と同じ値ではありません。
var key = System.Text.Encoding.Unicode.GetBytes(Event.PID + Event.PNumber +
Event.DateStamp + Event.TCount +
Event.OCD + Event.OSeqNbr +
Event.TID);
私が行方不明になっていることについて誰か助けてもらえますか?