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

SQL Server データベースを XML 最適化にエクスポート

    XML を生成する例を考えてみましょう:

    CREATE PROC GenerateXMLproc
    
    AS
    
    SELECT [Name], ProductNumber, Color
    
    FROM dbo.Product
    
    FOR XML raw(‘Product’), elements, root(‘Products’)
    

    次に、この XML データを保存するための上記のオプションについて説明します。

    <オール>
  1. CLR ストアド プロシージャの使用: このメソッドでは、生成された XML データ、ファイル名、ファイルの場所を入力パラメーターとして受け取る CLR ストアド プロシージャを作成できます。その後、要件に従ってその XML を処理し、その XML ファイルを目的の場所に保存できます。
  2. CLR ストアド プロシージャの作成:

    [Microsoft.SqlServer.Server.SqlProcedure]
    
    public static void SaveXMLOutput(SqlXml XmlData, SqlString Filename)
    
    {
    
                 //Save the XML data being passed to the SP to a file location
    
          //specify the name of the file suppiled to the SP
    
          XmlDocument xmlDoc = new XmlDocument();
    
          SqlPipe output = SqlContext.Pipe;
    
          xmlDoc.LoadXml(XmlData.Value);
    
          xmlDoc.Save(Filename.Value);
    
    }
    
    CREATE ASSEMBLY SaveXMLOutputAssembly
    
    from ‘C:\Temp\SaveXMLOutput.dll’
    
    WITH PERMISSION_SET = EXTERNAL_ACCESS
    

    インポートされた DLL/アセンブリからのストアド プロシージャの作成:

    CREATE PROCEDURE SaveXMLOutput
    
    @xmldata XML,
    
    @filename nvarchar(1024)
    
    AS
    
    EXTERNAL NAME SaveXMLOutputAssembly.[XMLOutput].SaveXMLOutput
    
    execute SaveXMLOutput ‘Pass the XML Data generated from other SP’
    
    ,‘ C:\Temp\MyXML.xml’
    



    1. mysql / php:投稿を表示し、投稿ごとにすべてのコメント

    2. MySQLNestedSelectは結果のリターンリストを選択できますか

    3. ディスクmysqlのtmpテーブルへのコピーをスキップします

    4. PostgreSQLユーザーリスト