相关疑难解决方法(0)

将xml字符串参数传递给SQL Server存储过程

我将xml字符串传递给SQL Server中的存储过程,以便将10000条记录插入到我的表中.在这个时我调用这个存储过程.想要检查带有我传递的xml字符串的SQL Server表,如果记录存在我不想插入,如果是单独记录必须插入的新记录.给出一些解决方案.谢谢.

  ALTER procedure [dbo].[SP_CMSUSER1]
      (@xmlString ntext)
    as
    begin

      DECLARE @idoc INT
      DECLARE @data nvarchar(100)

      EXEC sp_xml_preparedocument @idoc OUTPUT, @xmlString

    INSERT INTO dbo.Seg_RecipientsTemp (ContactID,first_name,last_name,company,email,last_updated)
    SELECT ContactID,
    first_name,
    last_name,
    company,
    email,
    last_updated FROM OPENXML(@idoc,

    '/NewDataSet/ContactData', 6)

    WITH

    (ContactID int ,
    first_name nvarchar(50), 
    last_name  nvarchar(50), 
    company    nvarchar(max),
    email nvarchar(100), 
    last_updated datetime 



    )
    end
Run Code Online (Sandbox Code Playgroud)

我的Xml是:

 <NewDataSet>
  <Table>
    <ContactID>2</ContactID>
    <last_name>klklk</last_name>
  </Table>
  <Table>
    <ContactID>4</ContactID>
    <first_name>k</first_name>
    <last_name>kk</last_name>
    <company>k</company>
  </Table>
  <Table>
    <ContactID>6</ContactID>
    <first_name>naveen</first_name>
    <last_name />
    <company>inno</company>
  </Table>
  <Table>
    <ContactID>7</ContactID>
    <first_name>sridar</first_name>
    <last_name />
    <company>mahindara</company>
  </Table>
  <Table>
    <ContactID>1</ContactID> …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server sql-server-2008

3
推荐指数
1
解决办法
4万
查看次数

标签 统计

sql-server ×1

sql-server-2008 ×1

t-sql ×1