sql >> Database teknologi >  >> RDS >> Sqlserver

Lagret procedure - Sender en parameter som xml og læser dataene

Du skal bare bruge en WHERE klausul tror jeg.

   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  

Eller du kan gøre det i XPath i stedet, hvilket jeg formoder kan være mere effektivt

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



  1. Indsæt NULL-værdi i INT-kolonnen

  2. SQL - Returner rækker med de fleste kolonnematches

  3. Hvordan vælger man pagineringsmæssigt N antal poster fra MySQL-databasen?

  4. Mærkelig adfærd med mysql_affected_rows() i PHP