python连接sql server2005数据库的代码

发布时间:2019-12-28编辑:脚本学堂
本文介绍下,python实现的连接sql server 2005数据库的一段代码,有需要的朋友,可以参考下。

说到用python连接sql server 数据库,近日在google上发现一个开源的项目:pymssql。
项目地址:https://code.google.com/p/pymssql/
1,示例:
 

复制代码 代码示例:
import pymssql 
conn = pymssql.connect(host='192.168.1.1',port='1433', user='user', password='password', database='mydatabase', as_dict=True) 
cur = conn.cursor() 
 
cur.execute('SELECT * FROM persons WHERE salesrep=%s', 'John Doe') 
for row in cur: 
    print "ID=%d, Name=%s" % (row['id'], row['name']) 
 
conn.close() 
 

代码说明:
第一行导入
第二个连接ip为192.168.1.1端口为1433的mydatabase数据库
第四行就是查询表。

2,调用存储过程
 

复制代码 代码示例:
import pymssql 
conn = pymssql.connect(host='192.168.1.1','1433', user='user', password='password', database='mydatabase', as_dict=True) 
cur = conn.cursor() 
 
cur.callproc('findPerson', ('John Doe',)) 
for row in cur: 
    print "ID=%d, Name=%s" % (row['id'], row['name']) 
 
conn.close() 

3,创建表
 

复制代码 代码示例:
import pymssql 
conn = pymssql.connect(host='SQL01', user='user', password='password', database='mydatabase') 
cur = conn.cursor() 
cur.execute('CREATE TABLE persons(id INT, name VARCHAR(100))') 
cur.executemany("INSERT INTO persons VALUES(%d, %s)",  
    [ (1, 'John Doe'), (2, 'Jane Doe') ]) 
conn.commit()  # you must call commit() to persist your data if you don't set autocommit to True 
 
cur.execute('SELECT * FROM persons WHERE salesrep=%s', 'John Doe') 
row = cur.fetchone() 
while row: 
    print "ID=%d, Name=%s" % (row[0], row[1]) 
    row = cur.fetchone() 
 
# if you call execute() with one argument, you can use % sign as usual 
# (it loses its special meaning). 
cur.execute("SELECT * FROM persons WHERE salesrep LIKE 'J%'") 
 
conn.close()

更多功能,大家查看源代码中的说明文档吧。