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

Bagaimana cara memasukkan data xml ke dalam tabel di sql server 2005

Dengan asumsi contoh XML seperti di atas:

<Record xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Emp>
        <ID>3</ID>
        <EmpName>Dibyendu</EmpName>
        <Sal>3500</Sal>
    </Emp>
</Record>

Dengan asumsi tabel berikut:

CREATE TABLE Employee
(
    [ID] [int] NOT NULL,  
    [EmpName] varchar(max) NOT NULL,   
    [Sal] [int] NULL
)

Prosedur tersimpan berikut, yang menggunakan xpaths, akan berhasil

CREATE PROCEDURE AddEmployee
    @empXml xml
AS

INSERT INTO Employee
(
    ID,
    EmpName,
    Sal
)
VALUES
(
    @empXml.value('(/Record/Emp/ID)[1]', 'int'),
    @empXml.value('(/Record/Emp/EmpName)[1]', 'varchar(max)'),
    @empXml.value('(/Record/Emp/Sal)[1]', 'int')
)

Yang kemudian dapat Anda jalankan dengan:

exec AddEmployee '<Record xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Emp><ID>3</ID><EmpName>Dibyendu</EmpName><Sal>3500</Sal></Emp></Record>' 

Anda perlu melakukan sedikit pemfaktoran ulang jika Record XML berpotensi menyertakan beberapa elemen 'Emp'.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Salin dalam model kedekatan

  2. Kesalahan SQL Server, 'Kata kunci tidak didukung 'sumber data'

  3. Apakah Mengakhiri Penggunaan menutup Koneksi SQL yang terbuka

  4. SQL - Hubungkan ke Server Tertaut dengan Instance Bernama

  5. Cuplikan Basis Data SQL Server -1