一意の識別子を使用してSQL Server 2012を使用していますが、末尾に追加文字(36文字ではない)を追加して選択すると、UUIDとの一致が返されることに気付きました。
例えば:
select * from some_table where uuid = '7DA26ECB-D599-4469-91D4-F9136EC0B4E8'
行をuuidで返します7DA26ECB-D599-4469-91D4-F9136EC0B4E8
。
しかし、あなたが実行した場合:
select * from some_table where uuid = '7DA26ECB-D599-4469-91D4-F9136EC0B4E8EXTRACHARS'
また、uuidを持つ行を返します7DA26ECB-D599-4469-91D4-F9136EC0B4E8
。
SQL Serverは、選択を行うときに36を超えるすべての文字を無視するようです。これはバグ/機能または構成可能なものですか?
フロントエンドで長さの検証を行っているため、大きな問題ではありませんが、私には正しい動作とは思えません。