在Python DB API中使用儲存過程

2021-06-15 20:12:43 字數 751 閱讀 5291

在python db api中使用儲存過程

python的db api是包含儲存過程支援的,在cursor物件的.callproc方法上實現。不過很可惜,我們所知的大部分python db api都沒有實現這個方法。(by gashero)一部分原因是資料庫本身不支援,亦或是驅動不支援。這些例子包括pysqlite2,這個是典型的資料庫不支援。odbc,這個麼,就是沒有實現了。pymssql,這個也是沒有實現的。

而實際上有些時候還是很有必要呼叫儲存過程的,(by gashero)比如歷史**的復用等等。所以我們可以避開實現上的問題,而直接用sql實現儲存過程呼叫,讓python重新支援儲存過程。下面的例子使用pymssql連線了遠端的ms sql 2000。示例**如下:

import pymssql

conn=pymssql.connect(host="192.168.0.1",user="sa",password="***",/

database="***")

cur=conn.cursor()

cur.execute("exec sp_name @param1=%s",('hello',))

data=cur.fetchall()

print data

這裡的儲存過程名為sp_name,並只含有乙個引數param1,(by gashero)對其賦值的過程為%s,並在後面的元組中給出。這裡應該注意所需引數的型別,如果引數要求是整數型別,也應該靈活的將其修改為%d,然後在後面的元組中給出對應整數值。

共勉。

在中使用SQLDMO

曾幾何時,夥伴們為的公升級傷透了腦筋.往往程式的公升級趕不上資料庫的公升級 版本控制的好,這也許不是什麼問題,但對於很大一部分中國公司來說這是無法避免的 而有些n久以前的資料庫要使用新程式的時候,資料庫的公升級簡直就是無從下手.所以對比資料庫公升級的緊要性就逐漸的凸現出來.對於表和字段的公升級按道理...

在ClanLib中使用blend func

本文是對blend func完全沒有認識的人寫的,就好象一天前的我一樣。廢話我就留到後面才說吧。在clanlib庫中的cl su ce與cl sprite中都會有 這個函式 void set blend func cl blendfunc src,cl blendfunc dest 其cl blen...

在MFC中使用Tab Control

說實話,我剛開始看見tab control的時候,覺得很簡單。哪知道用了一下,才發現自己錯了。要用好它,還是需要一些技巧的。經過網上搜尋資料,以及我自己的摸索,把一些要點記錄在這裡。tab control的執行效果有點像property sheet,但兩者還是有一些區別。我的理解就是property...