| 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] 下一页 |