主题:sql?
helun
[专家分:40] 发布于 2007-01-06 23:56:00
请问一下,我建了一个表,表是很简单但是有大量数据.所以我用的是可视化插入的,而不是用代码写的即不是用语句写的.有没有办法利用视图将这些插入数据的操作生成很多insert语句呢?0?
回复列表 (共3个回复)
沙发
tanchuhan [专家分:15140] 发布于 2007-01-08 18:38:00
编程语言的话,VB可以,不过不知道你自己用什么语言的.
板凳
adler [专家分:890] 发布于 2007-01-11 00:55:00
你做个存储过程
3 楼
233238447 [专家分:1350] 发布于 2007-01-11 16:43:00
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 这个执展的存储过程实现的
不知对你是否有帮助
我来回复