python - 使用 pyodbc 从数据库中提取 SQL 脚本

标签 python python-3.x ssms pyodbc

我对数据库比较陌生,所以这个问题可能有一个简单的答案(我已经搜索了几个小时)。

我想编写一个Python脚本来提取存储在SQL Server Management Studio中的SQL代码。我可以使用 pyodbc 成功连接到数据库并对数据库表运行查询,但我希望能够提取存储在过程、函数、 View 等中的 SQL 代码,而不运行它。

这似乎是相对简单的事情。我知道可以在 Powershell 中完成,但我更喜欢使用 Python。是否有某种模块或 pyodbc hack 可以做到这一点?

最佳答案

您可以在 SQL Server 中使用 sp_helptext 命令,该命令将为您逐行提供 SQL Server 对象源代码:

stored_proc_text = ""

res = cursor.execute('sp_helptext my_stored_procedure')

for row in res:
    stored_proc_text += row[0]

print(stored_proc_text)

祝你好运!

关于python - 使用 pyodbc 从数据库中提取 SQL 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49733624/

相关文章:

python - pyqtgraphplotwidget在错误区域绘制多个Y轴图

python - 我有一个关于Python优化的问题

python - 使用字典中的值过滤 pandas 数据框的列和行

sql-server - 如何在 SSMS 中查看 ntext 或 nvarchar(max) 中的所有文本?

python - 按特定最大值对 GroupBy 对象进行排序。个体群体内的值(value)

python - 搜索 html 标签时 python 中的贪婪正则表达式错误

sql - 自动创建数据库比较脚本并执行

sql - 复制时插入带有标识列的表会导致 SQL Server 出错

python - 交换字典的内容

python - 如何在 Bokeh 图的轴刻度中获得一个空格作为千​​位分隔符