sql >> データベース >  >> RDS >> Sqlserver

0x0B の探求

    やっと見つけた!

    .NET XML シリアライザは、シリアライズ時に無効な文字をエスケープしていましたが、前にエスケープ解除していました 逆シリアル化。

    逃亡者を探す必要があった エスケープされていない 0x0B を見つける ... 真剣に面白い人じゃない!

    だからこれ:

      SELECT * from Mytable where Column like '%' + '&#xB' + '%'
    

    実際にこれを見つけます:

    <?xml version="1.0"?>
          <Hashtable><key>313_other_10</key><value>&#xB</value></Hashtable>
    

    これは有効な XML のように見えますが、次の場合に無効な文字例外がスローされます:

        XmlSerializer xs = new XmlSerializer(Type.GetType(Hashtable));
        StringReader stringReader = new StringReader(xml);
        obj = xs.Deserialize(stringReader);
    

    助けに飛び込んでくれた人々に感謝します!かけがえのない助けになりました!



    1. 関係情報を使用したEntityFrameworkの多対多関係

    2. ClusterControl 1.7.2の発表:TimescaleDBとMySQL8.0のPostgreSQLバックアップとサポートの改善

    3. 15分ごとに1行の巨大な時系列テーブルを効率的にクエリする

    4. mysqlクエリPHP:特定のアイテムを最初にしてから、残りのアイテムを並べ替えたい