使用 gvim 处理sql语句

来源:互联网 发布:union摄影软件安卓版 编辑:程序博客网 时间:2024/06/07 08:50

今天遇到了奇怪的事

使用navicat 导出的sql数据插入语句格式如下

inser into [table_name] values(1,'xxx', 'yyy');

go;

inser into [table_name] values(2,'xxx', 'yyy');

go;

inser into [table_name] values(3,'xxx', 'yyy');

go


把上面的语句一次性的拷贝在sqlserver查询分析器中执行,是提示成功了,可是这些语句一旦被删除了,就会提示此操作将导致n多行的记录被删除,郁闷啊。

于是想到了inser into [table_name]  select 。。。

union all

select 。。。

union all

select 。。。

这种方式。但是insert语句非常多,一个一个手动该会累死。于是想到了使用gvim替换。步骤如下

1    1,$s/);//g     把每行末尾的);删除

2    1,$s/go/union all/g  把每行go替换为union all

3    1,$s/insert into \[table_name\] values (/select /g

4   把第一行改为  insert into table_name 

于是,最后得到的就是形如 

inser into [table_name]  select 。。。

union all

select 。。。

union all

select 。。。

的效果