欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 用pyodbc连接数据库

程序员文章站 2022-05-07 21:11:03
python 用pyodbc连接数据库 直接连接数据库和创建一个游标(cursor) 数据查询(SQL语句为 select …from..where) 1、pyo...

python 用pyodbc连接数据库

直接连接数据库和创建一个游标(cursor) 数据查询(SQL语句为 select …from..where)

1、pyodbc连接

import pyodbc

cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=xxx;DATABASE=xxx;UID=xxx;PWD=xxx')
cursor = cnxn.cursor()

cursor.execute("SELECT  id FROM datatable")
row = cursor.fetchone()

其中:

pyodbc.connect中,SERVER是服务器名称 cursor.execute为执行语句 Row这个类,类似于一个元组,但是他们也可以通过字段名进行访问

其中:

execute执行的时候,
有很多SQL语句用单行来写并不是很方便,所以你也可以使用三引号的字符串来写:

cursor.execute("""
               select user_id, user_name
                 from users
                where last_logon < '2001-01-01'
                  and bill_overdue = 'y'
               """)

2、row 中的数据抽取

有中文的时候,可以:

if row:
    print ' '.join(row)

如果要抽取每一个内容,可以定位:

for rows in row:
    print row.id

简易抽取:

假如你使用的是三引号,那么你也可以这样使用:

deleted = cursor.execute("""
                         delete
                           from products
                          where id <> 'pyodbc'
                         """).rowcount

3、简易命名

有些数据库(比如SQL Server)在计数时并没有产生列名,这种情况下,你想访问数据就必须使用下标。当然你也可以使用“as”关键字来取个列名

row = cursor.execute("select count(*) as user_count from users").fetchone()
print '%s users' % row.user_count