I'm using the mysql cli in edit mode (\e).
> Select * from \e
Goes to vim and I finish typing my command.
Select * from test_table;
Only to realize I've forgotten to use
the database I need. Is there a way I can preserve this script in edit mode, switch back to the regular mysql mode, run my command, and then come back to edit?
Another example would be: I forget how a column name is spelled and I need to look it up after I've started typing a command in edit mode.
Thanks!
Best Answer
Well, sort of.
In vim, save your work to a different file...
Then exit vim with an artificial error so the
mysql
client won't bother to re-read the temporary file.Then clear the input buffer in
mysql
.Then do what you've gotta do.
Then re-launch vim
The editor will have your last command in it. Clear that out and then paste the temporary file back into the buffer.
Keep editing, then save and exit and your new content will be returned to mysql for execution.