hashbytesコマンドを使用してSQLサーバーr2の列を更新しようとしています。コマンドの簡略化されたバージョンは次のとおりです。
COMMAND: "UPDATE [tbl] SET [checksum] = HASHBYTES('MD5',[field1])"
問題は、次のような奇妙な文字をすべてのフィールドに書き込むことです。
"˜Iý¸¶C"KéS©c"
ただし、(同じフィールドを使用して)選択を行う場合:
select HASHBYTES('MD5',[field1]) from [tbl];
正しい文字列を返します。
0x9849FDB80C17B64322DA094BE963A963
なぜそれがこれを行うのか誰もが知っています。テストデータベースを試してみましたが、updateコマンドは期待どおりに機能します。ただし、本番サーバーでは機能しません。