香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

在ironpython中利用装饰器执行SQL操作的例子


时间:2021-11-29 16:24 作者:admin610456


比较喜欢python/' target='_blank'>python的装饰器, 试了下一种用法,通过装饰器来传递sql,并执行返回结果
这个应用应该比较少
为了方便起见,直接使用了ironPython, 连接的mssql server

# -*- coding: utf-8 -*-import clrclr.AddReference('System.Data')from System.Data import *from functools import wrapsconn_str = "server=localhost;database=DB_TEST;uid=sa;password=sa2008"def mssql(sql):  def handler_result(rs):    rst = []    while rs.Read():      rst.Add(rs[0])    return rst  def decorator(fn):    @wraps(fn)    def wrapper(*args, **kwargs):      TheConnection = SqlClient.SqlConnection(conn_str)      TheConnection.Open()      try:        MyAction = SqlClient.SqlCommand(sql, TheConnection)        MyReader = MyAction.ExecuteReader()      except Exception,ex:        raise AssertionError(ex)      rst_data = handler_result(MyReader)      kwargs["sql_rst"] = rst_data      result = fn(*args, **kwargs)      MyReader.Close()      TheConnection.Close()      return result    return wrapper  return decorator@mssql(sql="Select getdate()")def get_data(sql_rst=""):  print sql_rst[0]get_data()

算是为了好玩吧,回看了下,可能实际用的机会不多

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)