ALTER PROCEDURE [dbo].[INSERT_TEST_STUDENT] 
@NAME NVARCHAR(10)
,@TELEPHONE NVARCHAR(10)
,@ADDRESS   NVARCHAR(10)
AS
BEGIN
  SET NOCOUNT ON;    INSERT INTO Test .dbo .student 
    ( name ,telephone ,address ,content )
    VALUES
    (@NAME ,@TELEPHONE ,@ADDRESS ,
    '<Parameter>
     <Number>@NAME</Number>
     <Tel>@TELEPHONE</Tel>
     </Parameter>')
END
content字段是xml类型的,其中有两个节点的值就是传入的参数值,我怎么才能把参数的具体值替换到节点里?

解决方案 »

  1.   


    ALTER PROCEDURE [dbo].[INSERT_TEST_STUDENT]  
    @NAME NVARCHAR(10)
    ,@TELEPHONE NVARCHAR(10)
    ,@ADDRESS NVARCHAR(10)
    AS
    BEGIN
      SET NOCOUNT ON;  INSERT INTO Test .dbo .student  
      ( name ,telephone ,address ,content )
      VALUES
      (@NAME ,@TELEPHONE ,@ADDRESS ,
      '<Parameter>
      <Number>'+@NAME+'</Number>
      <Tel>'+@TELEPHONE+'</Tel>
      </Parameter>')
    END
    组成字符串
      

  2.   

    INSERT INTO Test .dbo .student  
      ( name ,telephone ,address ,content )
      VALUES
      (@NAME ,@TELEPHONE ,@ADDRESS ,
      cast('<Parameter>
      <Number>'+@NAME+'</Number>
      <Tel>'+@TELEPHONE+'</Tel>
      </Parameter>') as xml)