Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Procedura składowana - Przekazanie parametru jako xml i odczytanie danych

Potrzebujesz tylko WHERE Myślę, że klauzula.

   INSERT INTO SN_IO ( [C1] ,[C2]  ,[C3] )
   SELECT [C1] ,[C2] ,[C3]
   FROM OPENXML (@currRecord, 'ios/io', 1)
   WITH ([C1] [varchar](25)       'C1',
         [C2] [varchar](25)       'C2',
         [C3] [varchar](20)       'C3'  )    
    WHERE  [C1]  IS NOT NULL  AND [C2]  IS NOT NULL AND [C3] IS NOT NULL  

Lub możesz to zrobić w XPath, co, jak sądzę, może być bardziej wydajne

   FROM OPENXML (@currRecord, 'ios/io[C1 and C2 and C3]', 1)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sparametryzowane zapytanie oczekuje parametru, którego nie podano

  2. Nie można przypisać wartości domyślnej do zmiennej lokalnej w SQL

  3. Podział ciągu T-SQL

  4. Widok SQL sprzedaży z datą równoległą

  5. na serwerze sql, jak uzyskać wartości kolumn z ` ` oddzielnymi?