Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Ekspor database SQL Server ke Optimasi XML

Mari kita pertimbangkan contoh untuk menghasilkan XML:

CREATE PROC GenerateXMLproc

AS

SELECT [Name], ProductNumber, Color

FROM dbo.Product

FOR XML raw(‘Product’), elements, root(‘Products’)

Sekarang kita akan membahas opsi yang disebutkan di atas untuk menyimpan data XML ini:

  1. Menggunakan Prosedur Tersimpan CLR: Dalam metode ini kita dapat membuat prosedur tersimpan CLR yang akan mengambil data XML yang dihasilkan, nama file &lokasi file sebagai parameter input. Dan kemudian dapat memproses XML tersebut sesuai kebutuhan dan dapat menyimpan file XML tersebut ke lokasi yang diinginkan.

Membuat prosedur tersimpan 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

Membuat prosedur tersimpan dari DLL/Assembly yang Diimpor:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. cte rekursif dengan fungsi peringkat

  2. Kueri SQL Server Passthrough sebagai dasar untuk kumpulan data DAO di Access

  3. Cara yang lebih baik untuk memeriksa apakah data sudah ada dan masukkan

  4. Objek 'DF__*' bergantung pada kolom '*' - Mengubah int menjadi double

  5. ExecuteNonQuery mengembalikan -1