日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python return返回值在计算机内的存储形式_Python如何执行存储过程,获取存储过程返回值...

發(fā)布時(shí)間:2024/9/19 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python return返回值在计算机内的存储形式_Python如何执行存储过程,获取存储过程返回值... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在Pathon中如何執(zhí)行存儲(chǔ)過程呢?可以使用如下方法:

存儲(chǔ)過程定義基本如下:

ALTER procedure [dbo]. [mysp]

@Station varchar ( 50),

@SN varchar ( 50),

@Info varchar ( 500) output ,

@Msg varchar ( 500) output

1. 使用adodbapi

Python代碼

from ?adodbapi?import ?connect

server?=?'dbserver'

user?=?'username'

password?=?'password'

database?=?'database'

sp?=?'sp'

station?=?'station'

sn?=?'sn'

try :

db?=?connect('Provider=SQLOLEDB.1 ;Data?Source=%s;Initial?Catalog=%s;/

User?ID=%s;Password=%s;'%(server,?database,?user,?password))

except ?Exception,?e:

print ?e

else :

cur?=?db.cursor()

msg?=?cur.callproc(sp,?(station,?sn))?#參數(shù)與存儲(chǔ)過程有關(guān)

if ?len(msg)?>?1 :

if ?msg[-1 ]?is ?None :

print ?'sn?is?ok.?Can?be?test?at?this?station'

else :

print ?msg[-1 ]

finally :

try :?db.close()

except :?pass

2. 使用pymssql

Python代碼

from ?pymssql?import ?connect

server?=?'dbserver'

user?=?'user'

password?=?'password'

database?=?'database'

sp?=?'sp'

station?=?'station'

sn?=?'sn'

sql?=?['set?nocount?on' ]

sql.append('declare?@Msg?varchar(500)' )

sql.append('declare?@return_value?varchar' )

sql.append("exec?@return_value?=?%s?@Station?=?'%s',?@SN?=?'%s',?@Info?=?'@Info',?@Msg?=?@Msg?output" )

sql.append('select?@Msg,?@return_value' )

sql?=?'/n' .join(sql)?%?(sp,?station,?sn)

def ?ffchk(server,?user,?password,?database,?sql):

try :

db?=?connect(host?=?server,

database?=?database,

user?=?user,

password?=?password,

login_timeout?=?10 )

cur?=?db.cursor()

cur.execute(sql)

except ?Exception,?e:

print ?e

else :

cur.nextset()?#?要加上這句才能通過fetch函數(shù)取到值 ? ?注意:這語句在Python2.7對(duì)應(yīng)的pymssql版本中是錯(cuò)誤!!!

print ?cur.fetchone()

finally :

try :?db.close()

except :?pass

總結(jié):

1. adodbapi簡(jiǎn)單,不用寫一串的sql語句,但是不能取到返回的Error Code,只能取到返回的錯(cuò)誤信息,也可能是我沒找到方法

2. pymssql與第一條相反,可以取到返回值和錯(cuò)誤信息,但要寫sql語句。

這里重點(diǎn)說明一下使用pymssql的方法

cur.execute("exec 存儲(chǔ)過程名 @參數(shù)1=XXX, @參數(shù)2='YYY'......")

cur.fetchone()??????? #如果該存儲(chǔ)過程中有返回結(jié)果集,可以調(diào)用此句,如果存儲(chǔ)過程是return,則pymssql不支持,無法獲取,此句錯(cuò)誤

conn.commit()??????? #如果沒有此句,則數(shù)據(jù)并沒有真正生效,比如存儲(chǔ)過程是執(zhí)行insert的,沒有commit的話,并不會(huì)真正插入數(shù)據(jù)

一般通過此三步即可以應(yīng)對(duì)很多使用存儲(chǔ)過程的要求

對(duì)于存儲(chǔ)過程傳出數(shù)據(jù)的方法還有如下的討論:

http://zh-cn.w3support.net/index.php?db=so&id=191644

總結(jié)

以上是生活随笔為你收集整理的python return返回值在计算机内的存储形式_Python如何执行存储过程,获取存储过程返回值...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 狠狠干天天操 | 神马午夜影院 | 欧州一级片 | 一本色道久久综合亚洲精品图片 | 美国黄色a级片 | 一区二区三区四区在线免费观看 | 亚洲欧美综合一区 | 欧美成人精品在线观看 | 亚洲玖玖爱 | 亚洲日本在线观看 | 麻豆精品网站 | 成人午夜福利视频 | 亚洲图片自拍偷拍区 | 中文字幕欧美日韩 | 亚洲一区二区三区四区 | 久草视频免费 | 超级碰在线观看 | 永久黄网站色视频免费观看w | 妻色成人网 | 全黄一级裸体 | 干成人网 | 在线免费观看一区二区三区 | 樱花草av | 午夜成年人 | 67194午夜 | 亚洲无在线观看 | 中文在线字幕免费观 | 欧美另类激情 | 丝袜 亚洲 另类 国产 制服 | 91人人草 | 男女免费视频 | 中文字幕精品一区二区三区视频 | 日本人妻伦在线中文字幕 | 依人综合 | 99热一区二区三区 | 日韩精品中文在线 | 91沈先生在线| 91精品综合久久久久久 | 18岁毛片| 国产一区二区网 | 久久综合狠狠综合久久综合88 | 色5月婷婷 | 少妇一级视频 | 久久久久无码国产精品 | 精品无码在线视频 | 亚洲AV无码国产精品国产剧情 | 久久久精品免费观看 | 久久国产精品久久久 | 激情久久网站 | 国产精品扒开做爽爽爽的视频 | 久久伊人热 | 亚洲精品一区二区三区四区五区 | 久久国精品 | 午夜激情综合 | 久久久青青草 | 午夜精品福利一区二区三区蜜桃 | 又粗又大又硬毛片免费看 | 99久久国产热无码精品免费 | 亚洲av无码国产精品色午夜 | 日本综合在线 | 超碰在线91 | 国产一区二区在线视频 | 成人123区| 成人做受视频试看60秒 | 亚洲日本在线观看视频 | 成人性爱视频在线观看 | 色综合日韩 | 亚洲一区二区精华 | 在线 色 | 香蕉视频ap | 青青草社区视频 | 免费成人在线视频观看 | 国产精品男女 | 成人a视频在线观看 | 久久丁香 | 亚洲精品人 | 99r热 | 奇米影视狠狠 | 日韩中文在线字幕 | 精久久久久| 成年网站在线播放 | 欧美做爰爽爽爽爽爽爽 | 性生活av| 成人深夜福利 | 欧美精品一区二区成人 | 久久国产一区二区三区 | 91成人在线观看喷潮 | 黄网站免费观看 | 91av在线免费 | 亚洲精选在线观看 | 黄色美女片| 五月天激情综合 | 中国美女一级黄色片 | 欧美jizz欧美性大全 | 成人精品视频在线播放 | 亚洲一区二区在线 | 黄色小视频在线免费观看 | 久久久久久久久久久久久久久久久 | 日韩在线第一区 |