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利用pymssql访问mysql数据库

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

python 连接mssqlserver方法之pymssql

安装pymssql模块,参照我之前写的博文python中使用第三方模块 import sys import pymssql class Mssql: def __init__(self, co...
  • a87b01c14
  • a87b01c14
  • 2015年05月19日 20:24
  • 5862

Python链接SQLServer数据库--pymssql使用基础

链接数据库 pymssql连接数据库的方式和使用sqlite的方式基本相同: 1、使用connect创建连接对象 2、connect.cursor创建游标对象,SQL语句的执行基本都在游标上进行...
  • jsqfengbao
  • jsqfengbao
  • 2017年02月23日 17:35
  • 2711

pymssql 安装和使用

Windows环境 安装环境:python 2.7 + Eclipse 4.3 + pydev 3.9 + pymssql 2.01 注意: 64位Eclipse必须使用64位JDK,32位Ecl...
  • qq_26182553
  • qq_26182553
  • 2017年07月13日 11:21
  • 1021

pymssql使用记录--把文本内容存入字段

使用pymssql 将utf8 编码的txt文本文件,插入到SQL SERVER表的字段中,需要解码SQL Server 字段名为nvarchar(MAX) .```Python def updat...
  • gududanxing
  • gududanxing
  • 2015年09月11日 16:16
  • 1045

python 利用pymssql连接sqlserver、查询、传参、插入新表案例

场景:连接数据库后,将某个表的查询结果赋值给另一条查询语句,并将查询后的结果插入到新表。 知识点: *1.pymssql如何连接数据库 2.数据库查询传参 3.字符串之间的相互转换 *impo...
  • mengliuqing123
  • mengliuqing123
  • 2017年10月21日 11:26
  • 746

pymssql 中文写入读取

 问题解决来自于:前辈的一个文章http://blog.csdn.net/kungbx/archive/2010/06/18/5678779.aspx #!/usr/bin/env python# -...
  • cyuyan112233
  • cyuyan112233
  • 2011年06月12日 10:21
  • 1827

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
  • 6805

Python的数据库连接Pymsql

//安装pip 点击打开链接 //然后就可以安装pymsql sudo -H python3 -m pip install pymsql python如何连接?我这里借用网上的一个代码例子: ...
  • rambo_huang
  • rambo_huang
  • 2016年07月09日 17:32
  • 1726

python 使用pymsql连接数据库

python3.4中不能使用python2.7中的MySQLdb连接数据库,取而代之的是pymysql。 安装: python3.4自带pip,可以在命令行窗口直接使用pip install py...
  • shouwangcc
  • shouwangcc
  • 2015年08月18日 20:34
  • 2793
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:pymssql数据库操作
举报原因:
原因补充:

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