擅长:python、mysql、java
<p>如果您不能或不想修改原始过程并有权访问数据库,那么可以编写一个简单的包装过程,该过程可以从python中调用。</p>
<p>例如,如果您有如下存储过程:</p>
<pre><code>CREATE PROC GetNextNumber
@NextNumber int OUTPUT
AS
...
</code></pre>
<p>您可以编写这样一个包装器,它很容易从python调用:</p>
<pre><code>CREATE PROC GetNextNumberWrap
AS
DECLARE @RNextNumber int
EXEC GetNextNumber @RNextNumber
SELECT @RNextNumber
GO
</code></pre>
<p>然后您可以从python调用它,如下所示:</p>
<pre><code>import pymssql
con = pymssql.connect(...)
cur = con.cursor()
cur.execute("EXEC GetNextNumberWrap")
next_num = cur.fetchone()[0]
</code></pre>