pymssql数据库操作

转载 2011年01月21日 14:10:00

(原帖链接http://www.cnblogs.com/pumaboyd/archive/2008/09/08/1287049.html)

 

使用的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='ssss',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
    sql = 'update pcontent set title = %s where id=1'
    cur.execute(sql,(str(datetime.datetime.today()),))
    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

 

最后提供一个DEMO 下载地址.

相关文章推荐

菜鸟学Python(17):用pymssql访问mssql数据库的存储过程

要在linux下用python调用ms sql server的存储过程,google一把,决定使用pymssql。但是文档很少,只有几个最简单的例子。看了网上这个例子后,才明白具体怎么调用存储过程。大...
  • wayne92
  • wayne92
  • 2008年03月05日 18:48
  • 4420

Python利用pymssql访问mysql数据库

#coding=utf8 #!/usr/bin/env python #----------------------------------------------------------------...
  • legan
  • legan
  • 2014年03月16日 10:51
  • 1002

python连接SQL Server:Pymssql模块

SQL Server 2012, 一、创建数据库Test、表tb、插入数据 在sql server中运行如下代码: create database Test; go use test; go if...
  • yupeigu
  • yupeigu
  • 2016年12月06日 17:55
  • 4697

nc65前后台数据库操作的用法

  • 2017年11月03日 15:19
  • 20KB
  • 下载

vb 数据库操作(写入、读取)

  • 2017年11月14日 14:00
  • 97KB
  • 下载

python中pymssql模块操作SQL Server

import pymssql import sys import datetime from string import Template cxn = pymssql.connect(host=r'i...

MySQL数据库操作

  • 2016年08月13日 17:19
  • 13MB
  • 下载

sqldb 数据库操作工具

  • 2017年10月13日 12:01
  • 710KB
  • 下载

python 使用pymssql连接sql server数据库

转自:http://www.cnblogs.com/qianlifeng/archive/2012/02/06/2340367.html #coding=utf-8  #!/usr...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:pymssql数据库操作
举报原因:
原因补充:

(最多只允许输入30个字)