python调用sql server存储过程_python远程调用sqlserver存储过程记录

本文介绍了在Python中远程调用SQL Server存储过程的方法,对比了pymssql和pyodbc两种库。由于pymssql无法获取存储过程返回值,作者选择了pyodbc,并详细展示了使用pyodbc执行存储过程,获取输出参数值的代码示例。
摘要由CSDN通过智能技术生成

开发中需要python远程调用sqlserver存储过程。搜索了网上有两种方式,pymssql和pyodbc。开始采用第一种方式开发,不过无法拿到存储过程中的返回数据,后采用pyodbc开发,当然存储过程中返回数据并不是直接return返回,需要设定一个output类型的参数,然后在结束时设置该参数并select一把方可得到返回。网上也有另外一种思路,写个存储过程中间件调用目标存储过程避免每有返回就得select的情况,该方法为验证。

pymssql 调用代码

try:

print

#客户姓名 客户消费的店名 货物ID 领取物资的数量

conn = pymssql.connect(host=host,user=user,password=pwd,

database=db,port=port,charset="utf8")

cur = conn.cursor()

if not cur:

raise(NameError,"连接数据库失败")

else:

sql=['set nocount on']

sql.append("exec salesUseMoney @name=%s,@tradName =%s,@goodsid=%s,@quantity=%s,@result=0")

sql.append('declare @return_value int')

sql.append("exec salesUseMoney @name='%s',@tradName &#

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值