Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更新Vim';当数据库更改时,是否完成动态SQL?_Sql_Vim - Fatal编程技术网

如何更新Vim';当数据库更改时,是否完成动态SQL?

如何更新Vim';当数据库更改时,是否完成动态SQL?,sql,vim,Sql,Vim,我正在使用Vim的动态SQL completion和dbext插件,它通过与数据库的实时连接来完成表和列等。 e、 g.如果我键入(在插入模式下)t将出现一个表格的弹出列表。 但是,如果数据库模式发生了变化(我在开发它时当然会发生这种变化),插件不会更新数据库模式的本地缓存。 文件说: SQL completion插件缓存中显示的各种列表 弹出窗口。这使得重新显示这些列表非常困难 快速的如果向数据库中添加新表或列,则可能会 必须清除插件缓存。此操作的默认映射 是: imap R:调用sqlcom

我正在使用Vim的动态SQL completion和dbext插件,它通过与数据库的实时连接来完成表和列等。 e、 g.如果我键入(在插入模式下)
t
将出现一个表格的弹出列表。
但是,如果数据库模式发生了变化(我在开发它时当然会发生这种变化),插件不会更新数据库模式的本地缓存。
文件说:

SQL completion插件缓存中显示的各种列表 弹出窗口。这使得重新显示这些列表非常困难 快速的如果向数据库中添加新表或列,则可能会 必须清除插件缓存。此操作的默认映射 是:
imap R:调用sqlcomplete\Map('ResetCache')

但是,当我运行上述命令
R
或任何组合时,所有vim显示的都是一条消息,表明缓存中的项目已被删除。 但当我使用补全时,它仍然基于旧模式。
我也尝试过粘贴

:call sqlcomplete#Map('ResetCache')<CR><C-X><C-O>
:调用sqlcomplete#Map('ResetCache'))
直接输入命令行,但这也不起作用。
.
有没有办法更新这个缓存,使完成插件基于数据库的当前版本?

或者干脆关闭缓存?

你有没有向插件作者报告过这个问题?没有,我不知道怎么做?github repo似乎并不活跃许多老插件非常稳定,几乎没有活动。试试看!好的,是的,我同意这样一个事实,即插件可能实际上有一个bug。我通过vims调试器运行代码,试图找到处理它的逻辑,以防脚本执行顺序是问题的根源。我可以找到确切的逻辑,但它似乎确实有可能插件可能有一个错误,所以是的,我会看看通知作者