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 相关文章推荐
Python显示进度条的方法
Sep 20 Python
跟老齐学Python之编写类之四再论继承
Oct 11 Python
JPype实现在python中调用JAVA的实例
Jul 19 Python
python的mysqldb安装步骤详解
Aug 14 Python
python @property的用法及含义全面解析
Feb 01 Python
Python爬虫包BeautifulSoup实例(三)
Jun 17 Python
pandas通过loc生成新的列方法
Nov 28 Python
如何不用安装python就能在.NET里调用Python库
Jul 12 Python
Python爬虫之urllib基础用法教程
Oct 12 Python
python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例
Feb 27 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
基于Python 函数和方法的区别说明
Mar 24 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 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
PHP高手需要要掌握的知识点
2014/08/21 PHP
php判断类是否存在函数class_exists用法分析
2014/11/14 PHP
Laravel 5框架学习之向视图传送数据
2015/04/08 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
2015/04/17 PHP
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
js 获取radio按钮值的实例
2013/08/17 Javascript
JavaScript不使用prototype和new实现继承机制
2014/12/29 Javascript
angularJS 入门基础
2015/02/09 Javascript
深入探讨前端框架react
2015/12/09 Javascript
jQuery实现选项卡切换效果简单演示
2015/12/09 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
2016/03/16 Javascript
JQuery validate插件Remote用法大全
2016/05/15 Javascript
Angular1.x自定义指令实例详解
2017/03/01 Javascript
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
vuejs使用axios异步访问时用get和post的实例讲解
2018/08/09 Javascript
vue实现的请求服务器端API接口示例
2019/05/25 Javascript
js实现贪吃蛇小游戏
2019/10/29 Javascript
微信小程序自定义弹出模态框禁止底部滚动功能
2020/03/09 Javascript
探索Python3.4中新引入的asyncio模块
2015/04/08 Python
Python利用sqlacodegen自动生成ORM实体类示例
2019/06/04 Python
python3 正则表达式基础廖雪峰
2020/03/25 Python
jupyter notebook运行命令显示[*](解决办法)
2020/05/18 Python
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
Overload和Override的区别
2012/09/02 面试题
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
企业理念标语
2014/06/09 职场文书
经济贸易专业自荐信
2014/06/11 职场文书
小学生运动会通讯稿
2014/09/23 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
环卫个人总结
2015/03/03 职场文书
工作计划范文之财务管理
2019/08/09 职场文书
python字符串拼接.join()和拆分.split()详解
2021/11/23 Python