• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 在ironpython中利用装饰器执行SQL操作的例子

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

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了ironpython,ironpython教程,ironpython 2.7,ironpython下载,ironpython.dll等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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

# -*- coding: utf-8 -*-
import clr
clr.AddReference('System.Data')
from System.Data import *
from functools import wraps

conn_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()

</div>

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

</div>

您可能想查找下面的文章:

  • 在ironpython中利用装饰器执行SQL操作的例子
  • 在ironpython中利用装饰器执行SQL操作的例子
  • 使用IronPython把Python脚本集成到.NET程序中的教程
  • 推荐下python/ironpython:从入门到精通

相关文章

  • 详解Python之数据序列化(json、pickle、shelve)
  • 用Python的Flask框架结合MySQL写一个内存监控程序
  • 常见的在Python中实现单例模式的三种方法
  • 轻松掌握python设计模式之策略模式
  • Python的Django框架中消息通知的计数器实现教程
  • Python基于Tkinter实现的记事本实例
  • Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
  • Python中用startswith()函数判断字符串开头的教程
  • python计算最大优先级队列实例
  • python定时采集摄像头图像上传ftp服务器功能实现

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Python常见格式化字符串方法小结【百分号与format方法】
    • Python cx_freeze打包工具处理问题思路及解决办法
    • python完成FizzBuzzWhizz问题(拉勾网面试题)示例
    • Python linecache.getline()读取文件中特定一行的脚本
    • Python的Flask框架应用程序实现使用QQ账号登录的方法
    • python3中str(字符串)的使用教程
    • python根据经纬度计算距离示例
    • python+django快速实现文件上传
    • python通过shutil实现快速文件复制的方法
    • python实现FTP服务器服务的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有