超级简单的 Python访问Access(2013)教程 pyodbc无需配置数据源

''''# -*- coding: utf-8 -*-
# 功能:python连接access2010数据库(.accdb)

import pyodbc

DBfile = r"D:\DB\123.accdb"  # 数据库文件
conn = pyodbc.connect(
    r"Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;charset='utf-8';")
# 用charset设置字符集

cursor = conn.cursor()

n = cursor.execute("select * from ahr")
print(n)

tu = cursor.fetchall

#print(tu[0][0])

cursor.close()
conn.close()'''
# -*-coding:utf-8-*-
import pyodbc

# 连接数据库(不需要配置数据源),connect()函数创建并返回一个 Connection 对象
cnxn = pyodbc.connect(r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:\DB\123.accdb')
# cursor()使用该连接创建(并返回)一个游标或类游标的对象
crsr = cnxn.cursor()

# 打印数据库goods.mdb中的所有表的表名
print('`````````````` goods ``````````````')
for table_info in crsr.tables(tableType='TABLE'):
    print(table_info.table_name)

l = crsr.execute("SELECT * from ahr")  # [('0001', '扇叶', 20, 'A公司', 'B公司', 2000, 2009)]

rows = crsr.execute("SELECT * from ahr")  # 返回的是一个元组
for item in rows:
    print(item)

l = crsr.execute("UPDATE ahr SET id=2")
print(crsr.rowcount)  # 想知道数据修改和删除时,到底影响了多少条记录,这个时候你可以使用cursor.rowcount的返回值。



''''# 删除表users
crsr.execute("DROP TABLE users")
# 创建新表 users
crsr.execute('CREATE TABLE users (login VARCHAR(8),userid INT, projid INT)')
# 给表中插入新数据
crsr.execute("INSERT INTO users VALUES('Linda',211,151)")

''''''
# 更新数据
crsr.execute("UPDATE users SET projid=1 WHERE userid=211")

# 删除行数据
crsr.execute("DELETE FROM goods WHERE goodNum='0001'")

# 打印查询的结果
for row in crsr.execute("SELECT * from users"):
    print(row)
'''
# 提交数据(只有提交之后,所有的操作才会对实际的物理表格产生影响)
crsr.commit()
crsr.close()
cnxn.close()

 

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值