回 帖 发 新 帖 刷新版面

主题:sql?

请问一下,我建了一个表,表是很简单但是有大量数据.所以我用的是可视化插入的,而不是用代码写的即不是用语句写的.有没有办法利用视图将这些插入数据的操作生成很多insert语句呢?0?

回复列表 (共3个回复)

沙发

编程语言的话,VB可以,不过不知道你自己用什么语言的.

板凳

你做个存储过程

3 楼

create table a   --创建表
(
 a varchar(20),
 b varchar(20)
)

go
insert into a values('few','哦哦')   --插入测试数据
go
declare @sql sysname                  --定义变量保存要写入文件的sql语句
declare @count int                    --获取总记录数
declare @i int                        --定义结束单行获取的标记
declare @cmd varchar(500)             --定义执行dos命令的变量
set @i=0                  --初始化标记
select @count=count(*) from a         --返回表中所有行             
while(@i<@count)              --开始循环    
begin
  set @i=@i+1                  --每次+1    
  set @sql=''                  --清空变量    
  set @cmd=''                  --清空    
set rowcount @i                  --根据需要而返回单行         
/*----根据自己所需可以改变表名,和字段名,以组织SQL语句------------*/
select @sql='echo ' + 'insert into a' + 'values(' + ''''+a+'''' +','+ ''''+b+''''+')' from a
set @cmd=@sql + '>>c:\sql.txt'        --组织DOS语句
exec master..xp_cmdshell @cmd,NO_OUTPUT --执行DOS语句,并把SQL命令语句输入到 c:\sql.txt 文件中
end        --执行完毕
上面只是一种实现的方法,利用  xp_cmdshell 这个执展的存储过程实现的
不知对你是否有帮助

我来回复

您尚未登录,请登录后再回复。点此登录或注册