因为有两文件中要把中文替换成日文,数据也不多就174条啊,刚开始全部手动替换完成了,真是够麻烦的,化了我差不多一个多小时啊,
感觉 这样的重复劳动用计算机来完成不是更好吗,计算机本来就适合干这样的事啊,
两个文件一个是excel的差不一万八千多条记录,另一个文本 文件170多条记录
先把这两文件导入到数据库,我这有sql server 2005倒个文件是很简单的,相信大家都用过吧,txt的文件选择平面文件就可以了,
文件导入了那就是要开始处理了,首先我想到的是用游 标来完成,通过游标套游标的方式进行的
下面请看代码吧
declare @d2 varchar(255)
declare @d4 varchar(255)
declare @d6 varchar(255)
declare @d8 varchar(255)
declare @d10 varchar(255)
declare @d12 varchar(255)
declare @d14 varchar(255)
declare @d16 varchar(255)
declare @s varchar(255)
declare @t varchar(255)
declare scursor cursor for
select * from [002]
open scursor
fetch next from scursor into @s,@t
while ( @@fetch_status=0 )
begin
declare cursor2 cursor for
select d2,d4,d6,d8,d10,d12,d14 from Sheet3$
open cursor2
fetch next from cursor2 into @d2,@d4,@d6,@d8,@d10,@d12,@d14
while ( @@fetch_status=0)
begin
update Sheet3$ set d2 = replace(d2,@s,@t),d4 = replace(d4,@s,@t),d6 = replace(d6,@s,@t),d8 = replace(d8,@s,@t),d10 = replace(d10,@s,@t),d12 = replace(d12,@s,@t),d14 = replace(d14,@s,@t)
where CURRENT OF cursor2
fetch next from cursor2 into @d2,@d4,@d6,@d8,@d10,@d12,@d14
end
close cursor2
deallocate cursor2
fetch next from scursor into @s,@t
end
close scursor
deallocate scursor
这是最开始的代码,靠效率太不行了,运行了20几分钟啊,虽然比手工快多 了啊,感觉肯定有提升的空间的,不过那时时间比较晚就休息去了
sql操作1
最新推荐文章于 2024-08-01 08:23:29 发布