我正在使用Vim的动态SQL完成和dbext插件,它通过使用与数据库的实时连接来提供表和列等的完成。
例如如果我输入(在插入模式下)<C-c>t
,将出现一个表格的弹出列表
但是,如果数据库模式发生了变化 - 当然我在开发它时会发生变化 - 插件不会更新数据库模式的本地缓存。
文档说这个:
SQL完成插件缓存显示的各种列表 弹出窗口。这使得重新显示这些列表非常重要 快速。如果将新表或列添加到数据库,则可以 有必要清除插件缓存。这个的默认地图 是:
imap <buffer> <C-C>R <C-\><C-O>:call sqlcomplete#Map('ResetCache')<CR><C-X><C-O>
但是,当我运行上述命令<C-c>R
或<C-\><C-O>
或任何组合时,所有vim显示都会显示已删除缓存中的项目的消息。
但是当我使用完成时,它仍然基于旧的模式
我也试过粘贴
:call sqlcomplete#Map('ResetCache')<CR><C-X><C-O>
直接进入命令行,但这也不起作用。
。
有没有办法让这个缓存更新,所以完成插件是基于当前版本的数据库?
或者甚至只是关闭缓存?