在python字符串中突出显示SQL

时间:2015-12-17 10:52:35

标签: syntax-highlighting ipython-notebook jupyter-notebook

我使用python的jupyter notebook使用db.py库进行数据库查询。

例如,它可能看起来像(在我的代码单元格中):

$pdf = PDF::loadView('pdf.invoice', $data);
return $pdf->download('invoice.pdf');

我想要的是我的字符串中SQL的语法高亮。那可能吗?关于如何构建它的建议也会有所帮助!

1 个答案:

答案 0 :(得分:0)

似乎最接近你想要的是IPython-SQL插件(https://github.com/catherinedevlin/ipython-sql)。它启用%sql%%sql魔术,以便您可以编写没有字符串的sql代码,将结果分配给某个变量,然后根据此结果生成数据帧。

>>> %sql postgresql:///master
'Connected: None@master'
>>> res = %sql SELECT * FROM some_table
731 rows affected.
>>> df = res.DataFrame()
>>> type(df)
pandas.core.frame.DataFrame

由于sql查询不是写在字符串中,所以你会得到一些突出显示(实际上它是用于python代码的误用突出显示,但它让事情变得更漂亮)。