python︱用pyodbc连接数据库

来源:互联网 发布:微信数据怎么放到sd卡 编辑:程序博客网 时间:2024/05/22 10:31
  • 直接连接数据库和创建一个游标(cursor)
  • 数据查询(SQL语句为 select …from..where)

1、pyodbc连接

import pyodbccnxn = 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

主要参考:

pyodbc的简单使用