选择SQL作为Jupyter Notebook的默认单元格魔术

rod*_*rgs 12 sql ipython-notebook ipython-magic jupyter-notebook

我正在为一个数据库课程写一个Jupyter笔记本; 大多数单元格将包含SQL代码,我使用IPython SQL魔术.目前我必须在每个单元格前加上%%sql.有没有办法避免%%sql在每个单元格之前键入,通过使其成为默认值?

我在如何为每个ipython笔记本电脑单元设置默认单元格魔术时发现了一个相关的问题 .但是,我找不到Jupyter的SQL内核.

Lou*_*ies 7

Jupyter文档告诉你如何编辑CodeMirror设置.CodeMirror有一个名为的选项value,用于确定CodeMirror单元的默认值(doc链接).

所以,在~/.jupyter/nbconfig/notebook.json以下代码中粘贴:

{
    "CodeCell": {
        "cm_config": {
            "value": "%%sql"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在每个新细胞都会有%%sql它.显然,此解决方案适用于任何单元格魔法,或者您可能希望代码单元具有的任何默认值.