Cygwin&Vim搭建Mainframe IDE(10)---Vim中访问数据库,执行SQL

12 篇文章 0 订阅
4 篇文章 0 订阅

在Vim中直接执行SQL

当程序需要用到数据库的时候显然离不开SQL语句,通过一个插件,就可以在Vim中直接执行SQL语句,并返回结果到新窗口.
dbext:http://www.vim.org/scripts/script.php?script_id=356

首先得安装DB2客户端,以DB2为例设置,当然得创建节点编目和数据库编目,具体参考网上的文章,例如:
db2 catalog tcp node node_name remote server_ip server server_port

db2 catalog db db_name at node node_name authentication dcs

db2 catalog dcs db db_name db_alias at node node_name

db2 terminate

然后尝试执行一条SQL:

db2 connect to db_name user user_name using pass_word
SQL statement


为了能在Cygwin中调用DB2命令行程序,需要初始化运行环境:

db2cmd -i -w -c db2

 

新的DB2客户端已经兼容了Cygwin,可以不需要设置直接调用.
然后提交类似命令,创建数据库实例连接才能访问.

对dbext插件作如下设置
let g:dbext_default_profile                = 'DB2_Sample'
let g:dbext_default_DB2_use_db2batch       = 0
let g:dbext_default_DB2_cmd_header         = ''
let g:dbext_default_DB2_bin                = 'db2cmd'
let g:dbext_default_DB2_cmd_terminator     = ';'
let g:dbext_default_DB2_cmd_options        = '-q del -s off'
let g:dbext_default_DB2_db2cmd_bin         = 'db2cmd'
let g:dbext_default_DB2_db2cmd_cmd_options = '-c -w -i -t db2 -stvf'
let g:dbext_default_profile_DB2_ENV1       = 'type=DB2:user=username:dbname=ENV1'
let g:dbext_default_profile_DB2_ENV2       = 'type=DB2:user=username:dbname=ENV2'
let g:dbext_default_profile_DB2_ENV3       = 'type=DB2:user=username:dbname=ENV3'

这里ENV1,ENV2,ENV3可以是自己定义的不同环境的数据,最多可以定义10个左右.
取决于建立的数据库实例.

接下来就可以在文本中执行SQL语句了,选中或者光标移动到SQL语句上使用快捷键即可,通常是<leader>se

在Cygwin中执行也是不错的方案,还可以从定向或者用其他工具处理结果,不过得首先连接到数据:

db2cmd -i -w -c db2 db2opt sqlscript_file


比如

db2cmd -i -w -c db2 -tvf sqlscript_file

 

SQL脚本文件的内容:

connect to <SCHEMA> user <USER> using <PASSWORD>;

SQL statement;

connect reset
terminate

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值