Char(0)
文字列に埋め込まれたヌル文字を16進コードに置き換えるSQLServerT-SQLの構造とは何ですか?
つまり
REPLACE('t'+Char(0)+'t', Char(0), REPLACE(master.dbo.fn_varbintohexstr(0), '000000', ''))
戻らない't0x00t'
、どうする?(これはすでに1から31まで機能します。)
この質問には、問題が照合であると説明する回答があります。
この回答は、master.dbo.fn_varbintohexstr(0)
を返し0x00000000
ます。
Replace
内部を手動で単純化すると、上記の質問への回答のように、句'0x00'
を追加するだけで機能しましたが、完全な式で機能するバージョンが見つかりません(すべてのnに使用できます) Collate
、0から31、9、10、13をスキップ)。