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

IF/ELSEステートメントを使用してSQLで新しいxmlノードエントリを更新または作成する方法

    最初にアンカー要素を削除してから、新しいアンカー要素を挿入してみてください。削除ステートメントがあるかどうかは関係ありません。また、新しいアンカー要素を作成するためのより良い方法を提供しました。 &などの文字のエンティティの作成を処理します 。

    -- Delete the anchor node from the XML
    set @xml.modify('delete /root/StartOne/Value6/a');
    
    -- Build the XML for the new anchor node
    set @a = (
             select @locTitle as 'a/@title',
                    @locUrl as 'a/@href',
                    '_blank' as 'a/@target',
                    @locTitle as 'a'
             for xml path(''), type
             );
    
    -- Insert the new anchor node
    set @xml.modify('insert sql:variable("@a") into (/root/StartOne/Value6)[1]');
    


    1. 更新部分で新しい値と古い値の両方を使用できるようにUPSERTを実行する方法

    2. OracleでONUPDATECASCADEを使用して外部キーを作成するにはどうすればよいですか?

    3. AzureSQLデータベースの自動チューニング

    4. PLSQLでEXISTS条件が機能しない場合