如何将一个包含数据的表生成一个SQL语句~~
假设有一个表A,里面包含了大量数据,我想把这里面的所有内容包含表结构和数据生成一个SQL语句,可以在查询分析器中执行一下,再生成同样的一个表,不知要如何作?~~
------解决方案--------------------我有一个办法,你可以用企业管理器的导出数据功能把数据导出到txt文件   
 其中行用 "; ",列用 ", "   
 导出后在语句前加入Create Table 语句 
 加上Insert TableName Select   
 然后替换 "; "为 " union all Select  "    
 去掉最后一个 " union all Select  "    
 这时文本文件中的数据就可以直接在查询分析器中运行了,注意identity列,先去掉这个属性 
 最后再加条alter语句加上,这样方便点
------解决方案--------------------/* 
  调用方法,如有表 table1 
  proc_insert  'table1 ' 
  可以生成 insert 语句 
 */ 
  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 '     
            when  a.xtype  =62    then   'case  when   '+a.name+ '  is  null  then   ' 'NULL ' '  else   '+ 'convert(varchar(23), '+a.name  + ',2) '+ '  end '     
            when  a.xtype  =56    then   'case  when   '+a.name+ '  is  null  then   ' 'NULL ' '  else   '+ 'convert(varchar(11), '+a.name  + ') '+ '  end '     
            when  a.xtype  =60    then   'case  when   '+a.name+ '  is  null  then   ' 'NULL ' '  else   '+ 'convert(varchar(22), '+a.name  + ') '+ '  end '     
            when  a.xtype  =239  then   'case  when   '+a.name+ '  is  null  then   ' 'NULL ' '  else   '+ ' ' ' ' ' ' ' ' '+ '+ 'replace( '+a.name+ ', ' ' ' ' ' ' ' ', ' '