Python数据库操作-pyodbc

一、安装

1、安装pyodbc库

使用pip或者pipnv方式安装均可。

pip install pyodbc
pipenv install pyodbc

2、安装access驱动程序

访问Access数据库,需要手动安装Access数据库引擎。需要注意,Access数据库引擎版本和位数需要和Office对应,否则会安装失败。以下代码均在Office2016(64bit)和Access2016(64bit)数据库引擎平台下验证。Access数据库引擎可在官网找到相应的链接。

  • Access Database Engine 2016

安装完成后,可以在Windwos管理工具->ODBC数据源管理程序查看到Access数据库的平台及驱动信息。
Python数据库操作-pyodbc_第1张图片

二、创建数据库

创建数据库需要使用Access桌面软件,创建Test.accdb文件作为测试数据库。(右键新建*.accdb文件也可以。)
注意:创建后不要使用Access打开,否则部分操作回应Access占用而操作失败

三、操作数据库

1、连接

# 连接
datafile = "G:/WorkSpace/Python/Test.accdb" # 貌似要用绝对路径
database = 'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=' + datafile
connect = pyodbc.connect(database)  # 连接数据库
cursor = connect.cursor()           # 获取cursor游标

2、创建表

# 创建表
cursor.execute("CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255), tele VARCHAR(14), addr VARCHAR(255))")

3、添加数据

# 添加数据
cursor.execute("INSERT INTO user VALUES(1, 'a', '0-12345678', '0-abcdefg')")
cursor.execute("INSERT INTO user VALUES(2, 'b', '1-12345678', '1-abcdefg')")
cursor.execute("INSERT INTO user VALUES(3, 'c', '2-12345678', '2-abcdefg')")
cursor.execute("INSERT INTO user VALUES(4, 'd', '3-12345678', '3-abcdefg')")
cursor.commit()

4、查询表

# 遍历数据库:输出表的信息
print("Database Table List Info: ")
for table_info in cursor.tables(tableType='TABLE'):
    print(table_info.table_name)

5、查询数据

# 遍历表数据:输出各行的信息
print("Database Table Data Info: ")
cursor.execute("SELECT * from user")
datas = cursor.fetchall()
for data in datas:
    print (data)
# 遍历表信息:输出指定字段行数据
print("Database Table Data Info: ")
cursor.execute("SELECT * from user WHERE name='a'")
print (cursor.fetchall())

6、修改数据

# 修改指定数据
cursor.execute("UPDATE user SET tele ='1-87654321' WHERE name='a'")

7、删除数据

cursor.execute("DELETE FROM user WHERE name='d'")

8、删除表

cursor.execute("DROP TABLE user")

9、结束

cursor.commit()     # 提交数据
cursor.close()      # 关闭游标
connect.close()     # 断开连接

你可能感兴趣的:(python,access)