打印本文 打印本文 关闭窗口 关闭窗口
收藏几段SQL语句和存储过程
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4804  更新时间:2007/11/14 10:58:59  文章录入:mintao  责任编辑:mintao
           from syscolumns 

          where id = object_id(@tablename)

        ) T

  set @sql =''''select ''''''''INSERT INTO [''''+ @tablename + '''']'''' + left(@sql,len(@sql)-1)+'''') '''' + left(@sqlValues,len(@sqlValues)-4) + '''')'''''''' from ''''+@tablename

  --print @sql

  exec (@sql)

end

 

GO

 

 

 

-- ======================================================

--根据表中数据生成insert语句的存储过程

--建立存储过程,执行 proc_insert 表名

--感谢Sky_blue

-- ======================================================

 

CREATE proc proc_insert (@tablename varchar(256))

as

begin

       set nocount on

       declare @sqlstr varchar(4000)

       declare @sqlstr1 varchar(4000)

       declare @sqlstr2 varchar(4000)

       select @sqlstr=''''select ''''''''insert ''''+@tablename

       select @sqlstr1=''''''''

       select @sqlstr2='''' (''''

       select @sqlstr1= '''' values ( ''''''''+''''

       select @sqlstr1=@sqlstr1+col+''''+'''''''',''''''''+'''' ,@sqlstr2=@sqlstr2+name +'''','''' from (select case

--     when a.xtype =173 then ''''case when ''''+a.name+'''' is null then ''''''''NULL'''''''' else ''''+''''convert(varchar(''''+convert(varchar(4),a.length*2+2)+''''),''''+a.name +'''')''''+'''' end''''

       when a.xtype =104 then ''''case when ''''+a.name+'''' is null then ''''''''NULL'''''''' else ''''+''''convert(varchar(1),''''+a.name +'''')''''+'''' end''''

       when a.xtype =175 then ''''case when ''''+a.name+'''' is null then ''''''''NULL'''''''' else ''''+''''''''''''''''''''''''''''''''''''+''''+''''replace(''''+a.name+'''','''''''''''''''''''''''''''''''','''''''''''''''''''''''''''''''''''''''''''''''')'''' + ''''+''''''''''''''''''''''''''''''''''''+'''' end''''

       when a.xtype =61  then ''''case when ''''+a.name+'''' is null then ''''''''NULL'''''''' else ''''+''''''''''''''''''''''''''''''''''''+''''+''''convert(varchar(23),''''+a.name +'''',121)''''+ ''''+''''''''''''''''''''''''''''''''''''+'''' end''''

       when a.xtype =106 then ''''case when ''''+a.name+'''' is null then ''''''''NULL'''''''' else ''''+''''convert(varchar(''''+convert(varchar(4),a.xprec+2)+''''),''''+a.name +'''')''''+'''' end''''

上一页  [1] [2] [3] [4] [5] [6] [7] [8]  下一页

打印本文 打印本文 关闭窗口 关闭窗口