服务器之家

服务器之家 > 正文

pymssql数据库操作MSSQL2005实例分析

时间:2020-07-07 10:15     来源/作者:惟愿莲心不染尘

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

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

  1. #!/usr/bin/env python 
  2. #coding=utf-8 
  3. from __future__ import with_statement 
  4. from contextlib import closing 
  5. import inspect 
  6. import pymssql 
  7. import uuid 
  8. import datetime 
  9. #查询操作 
  10. with closing(pymssql.connect(host='localhost',user='sa',password='pppp',database='blogs')) as conn : 
  11.   cur = conn.cursor() 
  12.   #SELECT 长连接查询操作(逐条方式获取数据) 
  13.   sql = "select * from pcontent" 
  14.   cur.execute(sql) 
  15.   for i in range(cur.rowcount): 
  16.     print cur.fetchone() 
  17.   #SELECT 短链接查询操作(一次查询将所有数据取出) 
  18.   sql = "select * from pcontent" 
  19.   cur.execute(sql) 
  20.   print cur.fetchall() 
  21.   #INSERT 
  22.   sql = "INSERT INTO pcontent(title)VAlUES(%s)" 
  23.   uuidstr = str(uuid.uuid1()) 
  24.   cur.execute(sql,(uuidstr,)) 
  25.   conn.commit() 
  26.   print cur._result 
  27.   #INSERT 获取IDENTITY(在插入一个值,希望获得主键的时候经常用到,很不优雅的方式) 
  28.   sql = "INSERT INTO pcontent(title)VAlUES(%s);SELECT @@IDENTITY" 
  29.   uuidstr = str(uuid.uuid1()) 
  30.   cur.execute(sql,(uuidstr,)) 
  31.   print "arraysite:",cur.arraysize 
  32.   print cur._result[1][2][0][0]#不知道具体的做法,目前暂时这样使用 
  33.   conn.commit() 
  34.   #Update 
  35.   vl = '中国' 
  36.   sql = 'update pcontent set title = %s where id=1' 
  37.   cur.execute(sql,(vl,)) 
  38.   conn.commit() 
  39.   #参数化查询这个是为了避免SQL攻击的 
  40.   sql = "select * from pcontent where id=%d" 
  41.   cur.execute(sql,(1,)) 
  42.   print cur.fetchall() 
  43.   # 调用存储过程SP_GetALLContent 无参数 
  44.   sql = "Exec SP_GetALLContent" 
  45.   cur.execute(sql) 
  46.   print cur.fetchall() 
  47.   # 调用存储过程SP_GetContentByID 有参数的 
  48.   sql = "Exec SP_GetContentByID %d" 
  49.   cur.execute(sql,(3,)) 
  50.   print cur.fetchall() 
  51.   #调用存储过程SP_AddContent 有output参数的(很不优雅的方式) 
  52.   sql = "DECLARE @ID INT;EXEC SP_AddContent 'ddddd',@ID OUTPUT;SELECT @ID" 
  53.   cur.execute(sql) 
  54.   print cur._result 
 

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

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部