1. 程式人生 > >python 使用 pymssql 呼叫儲存過程並讓他返回值

python 使用 pymssql 呼叫儲存過程並讓他返回值

   眾所周知, pymssql 庫並不支援(暫時?)呼叫儲存過程,只能使用原生的sql 語句讓其呼叫。

   這樣一來如果需要讓pymssql呼叫儲存過程並讓其返回值 , 顯然return語句是不能用了, 

   但是我們可以使用 select 語句讓其返回值。 

   比如,我想查詢資料是否插入成功,可以這樣寫

   declare  @oldCount int ;

   declare @newCount int ;

   ...

   if(@oldCount = @newCount)

         select -1;       

   select  1; 

  在python 中, 我們可以先呼叫儲存過程 [procInsert]

  然後我們使用 fetchone 語句 即可得到大概的返回值,

  因為返回值的格式是 (-1,) 或者是 (1,) 這樣的。

  這樣並不影響判斷, 但是強迫症肯定受不了, 所以使用正則表示式提取制定的值即可.