mysql - MySQL 函数(宏?)可用于所有数据库?
问题描述
我经常发现自己在做select group_concat(COLUMN_NAME separator ', ') FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='<current database>' AND TABLE_NAME='<argument>';
。我手动将其复制粘贴并根据需要进行更改<current database>
,<argument>
但如果我能做somescript(foo)
或类似的事情会很棒,它会自动填充当前数据库并foo
放入argument
.
解决方案
虽然 MySQL CLI 显然无法做到这一点,但我刚刚发现https://github.com/dbcli/mycli在 2017 年底的1.14.0中添加了大部分内容(当前数据库部分除外):
将位置参数添加到最喜欢的查询(感谢:Scrappy Soft)。
虽然在与 Ubuntu 18.04 捆绑的 mycli 版本中不可用(这是 WSL 附带的),但它可以从pip install mycli
并且自述文件指出您“可能”需要 root,但我的经验是我不需要 sudo 但它无法找到二进制文件,我阅读https://stackoverflow.com/a/46071447/308851并运行python -m site
,运行find ~/.local -name mycli
,然后将生成的目录添加到PATH
.
推荐阅读
- python - 如何检查 url 是否不在 i18n_pattern 中?
- mysql - Laravel whereBetween 不起作用。表明?
- android - 从后台带回片段时的Android片段生命周期
- ios - 在 Xcode 中禁用记录 UI 测试
- groovy - Groovy withBatch 无需关闭
- python - 如何在 matplotlib 中使用时间序列绘制单个行值
- java - 层次关系的图遍历
- machine-learning - 关于 XGBoost 的问题
- batch-file - 将文件从一台服务器复制到另一台服务器出现 NTFS 错误
- redirect - 使用重写映射重定向 / 之后的任何内容