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

SQL Server 2008 で XML 変数から属性を削除するには?

    WITH xmlnamespaces を使用する必要があります 、それ以外の場合、「/clue_personal_auto」は NAMESPACED clue_personal_auto xmlns="..." と一致しません ノード。

    それだけでなく、名前空間は通常の属性ではないため、実際には削除できません。

    通常の属性を削除する例

    declare @xml table (xmlid int, xmldocument xml)
    insert @xml select 357, '
    <clue_personal_auto xmlns="http://cp.com/rules/client" otherattrib="x">
      <admin>
         <receipt_date>03/16/2011</receipt_date>
         <date_request_ordered>03/16/2011</date_request_ordered>
         <report_usage>Personal</report_usage>
      </admin>
    </clue_personal_auto>'
    
    ;WITH XMLNAMESPACES ('http://cp.com/rules/client' as ns)
    UPDATE @XML
    SET XmlDocument.modify('delete  (/ns:clue_personal_auto/@otherattrib)[1]')
    WHERE xmlid = 357
    
    select * from @xml
      

    1. プレーンテキストのパスワードをMySQLに*一時的に*保存しても安全ですか?

    2. コマンドラインからcsvをmysqlにインポートする

    3. textまたはntextデータ型のREPLACEの代替

    4. MySQLクエリがワイルドになりましたか?