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

Pulling SQL Script from Database Using pyodbc

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

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

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

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

stored_proc_text = ""

res = cursor.execute('sp_helptext my_stored_procedure')

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

print(stored_proc_text)

祝你好运!