pymssql数据库操作MSSQL2005实例分析


Posted in Python onMay 25, 2015

本文实例讲述了pymssql数据库操作MSSQL2005的方法。分享给大家供大家参考。具体如下:

使用的MSSQL2005,通过pymssql来连接的。把可能用到的数据库操作方式都总结如下,如果要用的时候就备查啦。

#!/usr/bin/env python
#coding=utf-8
from __future__ import with_statement
from contextlib import closing
import inspect
import pymssql
import uuid
import datetime
#查询操作
with closing(pymssql.connect(host='localhost',user='sa',password='pppp',database='blogs')) as conn :
  cur = conn.cursor()
  #SELECT 长连接查询操作(逐条方式获取数据)
  sql = "select * from pcontent"
  cur.execute(sql)
  for i in range(cur.rowcount):
    print cur.fetchone()
  #SELECT 短链接查询操作(一次查询将所有数据取出)
  sql = "select * from pcontent"
  cur.execute(sql)
  print cur.fetchall()
  #INSERT 
  sql = "INSERT INTO pcontent(title)VAlUES(%s)"
  uuidstr = str(uuid.uuid1())
  cur.execute(sql,(uuidstr,))
  conn.commit()
  print cur._result
  #INSERT 获取IDENTITY(在插入一个值,希望获得主键的时候经常用到,很不优雅的方式)
  sql = "INSERT INTO pcontent(title)VAlUES(%s);SELECT @@IDENTITY"
  uuidstr = str(uuid.uuid1())
  cur.execute(sql,(uuidstr,))
  print "arraysite:",cur.arraysize
  print cur._result[1][2][0][0]#不知道具体的做法,目前暂时这样使用
  conn.commit()
  #Update
  vl = '中国'
  sql = 'update pcontent set title = %s where id=1'
  cur.execute(sql,(vl,))
  conn.commit()
  #参数化查询这个是为了避免SQL攻击的
  sql = "select * from pcontent where id=%d"
  cur.execute(sql,(1,))
  print cur.fetchall()
  # 调用存储过程SP_GetALLContent 无参数
  sql = "Exec SP_GetALLContent"
  cur.execute(sql)
  print cur.fetchall()
  # 调用存储过程SP_GetContentByID 有参数的
  sql = "Exec SP_GetContentByID %d"
  cur.execute(sql,(3,))
  print cur.fetchall()
  #调用存储过程SP_AddContent 有output参数的(很不优雅的方式)
  sql = "DECLARE @ID INT;EXEC SP_AddContent 'ddddd',@ID OUTPUT;SELECT @ID"
  cur.execute(sql)
  print cur._result

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python3使用tkinter实现ui界面简单实例
Jan 10 Python
Python设计模式之观察者模式实例
Apr 26 Python
跟老齐学Python之list和str比较
Sep 20 Python
Python的mysql数据库的更新如何实现
Jul 31 Python
pandas 快速处理 date_time 日期格式方法
Nov 12 Python
Django框架实现的简单分页功能示例
Dec 04 Python
pandas数据集的端到端处理
Feb 18 Python
python把1变成01的步骤总结
Feb 27 Python
python requests证书问题解决
Sep 05 Python
Python post请求实现代码实例
Feb 28 Python
keras CNN卷积核可视化,热度图教程
Jun 22 Python
Python类的继承super相关原理解析
Oct 22 Python
python动态参数用法实例分析
May 25 #Python
Python文件去除注释的方法
May 25 #Python
python提取页面内url列表的方法
May 25 #Python
python实现批量改文件名称的方法
May 25 #Python
python基于右递归解决八皇后问题的方法
May 25 #Python
python基于urllib实现按照百度音乐分类下载mp3的方法
May 25 #Python
Python输出9*9乘法表的方法
May 25 #Python
You might like
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
Laravel5.1框架路由分组用法实例分析
2020/01/04 PHP
js预载入和JavaScript Image()对象使用介绍
2011/08/28 Javascript
jQueryUI写一个调整分类的拖放效果实现代码
2012/05/10 Javascript
通过实例理解javascript中没有函数重载的概念
2015/06/03 Javascript
JQuery解析XML的方法小结
2016/04/02 Javascript
jQuery获取剪贴板内容的方法
2016/06/16 Javascript
Angular 页面跳转时传参问题
2016/08/01 Javascript
使用jQuery5分钟快速搞定双色表格的简单实例
2016/08/08 Javascript
微信小程序 购物车简单实例
2016/10/24 Javascript
jQuery实现的模拟弹出窗口功能示例
2016/11/24 Javascript
使用Webpack提高Vue.js应用的方式汇总(四种)
2017/07/10 Javascript
jQuery事件对象的属性和方法详解
2017/09/09 jQuery
Vue在 Nuxt.js 中重定向 404 页面的方法
2019/04/23 Javascript
Vue中props的详解
2019/05/16 Javascript
JavaScript中判断为整数的多种方式及保留两位小数的方法
2019/09/09 Javascript
JS实现电脑虚拟键盘打字测试
2020/06/24 Javascript
python实现矩阵乘法的方法
2015/06/28 Python
Python学习入门之区块链详解
2017/07/25 Python
TensorFLow用Saver保存和恢复变量
2018/03/10 Python
使用sklearn进行对数据标准化、归一化以及将数据还原的方法
2018/07/11 Python
pandas中apply和transform方法的性能比较及区别介绍
2018/10/30 Python
Python 一键制作微信好友图片墙的方法
2019/05/16 Python
python多线程下信号处理程序示例
2019/05/31 Python
python ChainMap的使用和说明详解
2019/06/11 Python
Python 200行代码实现一个滑动验证码过程详解
2019/07/11 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
Python3内置函数chr和ord实现进制转换
2020/06/05 Python
html5嵌入内容_动力节点Java学院整理
2017/07/07 HTML / CSS
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
AC Lens:购买隐形眼镜
2017/02/26 全球购物
财产公证书
2014/04/10 职场文书
应聘销售主管的求职信
2014/04/26 职场文书
2015年秋季运动会加油稿
2015/07/22 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript