前沿拓展:
-Python 使用 pyodbc庫(kù)# -*-coding:utf-8-*-
'''Access數(shù)據(jù)庫(kù)連接網(wǎng)上大致有兩種方法,一種是使用pyodbc,另一種是使用win32com.clientI(此處方法一安裝,win32com下次有空再試試)
方法一:
一、安裝第三方庫(kù) pyodbc
Pip install pyodbc
二、檢驗(yàn)是否可以正常連接數(shù)據(jù)庫(kù)
檢查是否有一個(gè)Microsoft Access ODBC驅(qū)動(dòng)程序可用于你的Python環(huán)境(在Windows上)的方法:
# >>> import pyodbc
# >>> [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
如果你看到一個(gè)空列表,那么您正在運(yùn)行64位Python,并且需要安裝64位版本的“ACE”驅(qū)動(dòng)程序。
如果您只看到['Microsoft Access Driver (*.mdb)']并且需要使用.accdb文件,那么您需要安裝32位版本的“ACE”驅(qū)動(dòng)程序
三、安裝64位的ODBC 驅(qū)動(dòng)器:
1.Microsoft Access 2016 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
1.Microsoft Access Database Engine 2016 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=54920
2.Microsoft Access 2010 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
2.Microsoft Access Database Engine 2010 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=13255
右擊文件accessdatabaseengine_X64.exe(約79.5Mb大?。┻x擇以管理員模式運(yùn)行即可安裝【此處使用版本為2016】
[
報(bào)錯(cuò):Microsoft office Click-to-Run Service (Process ld: 4240)
解決:打開(kāi)任務(wù)管理器,可以看到在后臺(tái)有一個(gè)Microsoft Office Click-to-run(SXS)的進(jìn)程。
]
注意:
1. 如何查看Access是32位還是64位
—>>> 文件 > 賬戶(hù) > 關(guān)于A(yíng)ccess'''
import pyodbc
# python_Access.accdb
DBfile = r"./python_Access.accdb" # 數(shù)據(jù)庫(kù)文件需要帶路徑
print(DBfile)
d = [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
print(d)
# 連接數(shù)據(jù)庫(kù)(不需要配置數(shù)據(jù)源),connect()函數(shù)創(chuàng)建并返回一個(gè) Connection 對(duì)象
# 1.創(chuàng)建鏈接
conn = pyodbc.connect(r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;")
# cursor()使用該連接創(chuàng)建(并返回)一個(gè)游標(biāo)或類(lèi)游標(biāo)的對(duì)象
# 2.創(chuàng)建游標(biāo)
cursor = conn.cursor()
# cnxn = pyodbc.connect('DSN=pyAcc.mdb;PWD=password')
# cursor = cnxn.cursor()
print('“““““““ 查詢(xún)所有表名 “““““““')
for table_info in cursor.tables(tableType='TABLE'):
print(table_info.table_name)
# 3.創(chuàng)建SQL查詢(xún)語(yǔ)句
# SQL = "SELECT * from datatable;"
SQL = "SELECT * from 銷(xiāo)售出庫(kù)詳情 where id<10;"
# 4.執(zhí)行查詢(xún)
datas = cursor.execute("SELECT * from 銷(xiāo)售出庫(kù)詳情") # <pyodbc.Cursor object at 0x000001B851E04BB0>
print(type(datas))
for row in cursor.execute(SQL):
print(row) # <class 'pyodbc.Row'>
print(type(row))
cursor.close()
conn.close()
拓展知識(shí):
前沿拓展:
-Python 使用 pyodbc庫(kù)# -*-coding:utf-8-*-
'''Access數(shù)據(jù)庫(kù)連接網(wǎng)上大致有兩種方法,一種是使用pyodbc,另一種是使用win32com.clientI(此處方法一安裝,win32com下次有空再試試)
方法一:
一、安裝第三方庫(kù) pyodbc
Pip install pyodbc
二、檢驗(yàn)是否可以正常連接數(shù)據(jù)庫(kù)
檢查是否有一個(gè)Microsoft Access ODBC驅(qū)動(dòng)程序可用于你的Python環(huán)境(在Windows上)的方法:
# >>> import pyodbc
# >>> [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
如果你看到一個(gè)空列表,那么您正在運(yùn)行64位Python,并且需要安裝64位版本的“ACE”驅(qū)動(dòng)程序。
如果您只看到['Microsoft Access Driver (*.mdb)']并且需要使用.accdb文件,那么您需要安裝32位版本的“ACE”驅(qū)動(dòng)程序
三、安裝64位的ODBC 驅(qū)動(dòng)器:
1.Microsoft Access 2016 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
1.Microsoft Access Database Engine 2016 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=54920
2.Microsoft Access 2010 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
2.Microsoft Access Database Engine 2010 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=13255
右擊文件accessdatabaseengine_X64.exe(約79.5Mb大?。┻x擇以管理員模式運(yùn)行即可安裝【此處使用版本為2016】
[
報(bào)錯(cuò):Microsoft office Click-to-Run Service (Process ld: 4240)
解決:打開(kāi)任務(wù)管理器,可以看到在后臺(tái)有一個(gè)Microsoft Office Click-to-run(SXS)的進(jìn)程。
]
注意:
1. 如何查看Access是32位還是64位
—>>> 文件 > 賬戶(hù) > 關(guān)于A(yíng)ccess'''
import pyodbc
# python_Access.accdb
DBfile = r"./python_Access.accdb" # 數(shù)據(jù)庫(kù)文件需要帶路徑
print(DBfile)
d = [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
print(d)
# 連接數(shù)據(jù)庫(kù)(不需要配置數(shù)據(jù)源),connect()函數(shù)創(chuàng)建并返回一個(gè) Connection 對(duì)象
# 1.創(chuàng)建鏈接
conn = pyodbc.connect(r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;")
# cursor()使用該連接創(chuàng)建(并返回)一個(gè)游標(biāo)或類(lèi)游標(biāo)的對(duì)象
# 2.創(chuàng)建游標(biāo)
cursor = conn.cursor()
# cnxn = pyodbc.connect('DSN=pyAcc.mdb;PWD=password')
# cursor = cnxn.cursor()
print('“““““““ 查詢(xún)所有表名 “““““““')
for table_info in cursor.tables(tableType='TABLE'):
print(table_info.table_name)
# 3.創(chuàng)建SQL查詢(xún)語(yǔ)句
# SQL = "SELECT * from datatable;"
SQL = "SELECT * from 銷(xiāo)售出庫(kù)詳情 where id<10;"
# 4.執(zhí)行查詢(xún)
datas = cursor.execute("SELECT * from 銷(xiāo)售出庫(kù)詳情") # <pyodbc.Cursor object at 0x000001B851E04BB0>
print(type(datas))
for row in cursor.execute(SQL):
print(row) # <class 'pyodbc.Row'>
print(type(row))
cursor.close()
conn.close()
拓展知識(shí):
前沿拓展:
-Python 使用 pyodbc庫(kù)# -*-coding:utf-8-*-
'''Access數(shù)據(jù)庫(kù)連接網(wǎng)上大致有兩種方法,一種是使用pyodbc,另一種是使用win32com.clientI(此處方法一安裝,win32com下次有空再試試)
方法一:
一、安裝第三方庫(kù) pyodbc
Pip install pyodbc
二、檢驗(yàn)是否可以正常連接數(shù)據(jù)庫(kù)
檢查是否有一個(gè)Microsoft Access ODBC驅(qū)動(dòng)程序可用于你的Python環(huán)境(在Windows上)的方法:
# >>> import pyodbc
# >>> [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
如果你看到一個(gè)空列表,那么您正在運(yùn)行64位Python,并且需要安裝64位版本的“ACE”驅(qū)動(dòng)程序。
如果您只看到['Microsoft Access Driver (*.mdb)']并且需要使用.accdb文件,那么您需要安裝32位版本的“ACE”驅(qū)動(dòng)程序
三、安裝64位的ODBC 驅(qū)動(dòng)器:
1.Microsoft Access 2016 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
1.Microsoft Access Database Engine 2016 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=54920
2.Microsoft Access 2010 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
2.Microsoft Access Database Engine 2010 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=13255
右擊文件accessdatabaseengine_X64.exe(約79.5Mb大?。┻x擇以管理員模式運(yùn)行即可安裝【此處使用版本為2016】
[
報(bào)錯(cuò):Microsoft office Click-to-Run Service (Process ld: 4240)
解決:打開(kāi)任務(wù)管理器,可以看到在后臺(tái)有一個(gè)Microsoft Office Click-to-run(SXS)的進(jìn)程。
]
注意:
1. 如何查看Access是32位還是64位
—>>> 文件 > 賬戶(hù) > 關(guān)于A(yíng)ccess'''
import pyodbc
# python_Access.accdb
DBfile = r"./python_Access.accdb" # 數(shù)據(jù)庫(kù)文件需要帶路徑
print(DBfile)
d = [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
print(d)
# 連接數(shù)據(jù)庫(kù)(不需要配置數(shù)據(jù)源),connect()函數(shù)創(chuàng)建并返回一個(gè) Connection 對(duì)象
# 1.創(chuàng)建鏈接
conn = pyodbc.connect(r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;")
# cursor()使用該連接創(chuàng)建(并返回)一個(gè)游標(biāo)或類(lèi)游標(biāo)的對(duì)象
# 2.創(chuàng)建游標(biāo)
cursor = conn.cursor()
# cnxn = pyodbc.connect('DSN=pyAcc.mdb;PWD=password')
# cursor = cnxn.cursor()
print('“““““““ 查詢(xún)所有表名 “““““““')
for table_info in cursor.tables(tableType='TABLE'):
print(table_info.table_name)
# 3.創(chuàng)建SQL查詢(xún)語(yǔ)句
# SQL = "SELECT * from datatable;"
SQL = "SELECT * from 銷(xiāo)售出庫(kù)詳情 where id<10;"
# 4.執(zhí)行查詢(xún)
datas = cursor.execute("SELECT * from 銷(xiāo)售出庫(kù)詳情") # <pyodbc.Cursor object at 0x000001B851E04BB0>
print(type(datas))
for row in cursor.execute(SQL):
print(row) # <class 'pyodbc.Row'>
print(type(row))
cursor.close()
conn.close()
拓展知識(shí):
前沿拓展:
-Python 使用 pyodbc庫(kù)# -*-coding:utf-8-*-
'''Access數(shù)據(jù)庫(kù)連接網(wǎng)上大致有兩種方法,一種是使用pyodbc,另一種是使用win32com.clientI(此處方法一安裝,win32com下次有空再試試)
方法一:
一、安裝第三方庫(kù) pyodbc
Pip install pyodbc
二、檢驗(yàn)是否可以正常連接數(shù)據(jù)庫(kù)
檢查是否有一個(gè)Microsoft Access ODBC驅(qū)動(dòng)程序可用于你的Python環(huán)境(在Windows上)的方法:
# >>> import pyodbc
# >>> [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
如果你看到一個(gè)空列表,那么您正在運(yùn)行64位Python,并且需要安裝64位版本的“ACE”驅(qū)動(dòng)程序。
如果您只看到['Microsoft Access Driver (*.mdb)']并且需要使用.accdb文件,那么您需要安裝32位版本的“ACE”驅(qū)動(dòng)程序
三、安裝64位的ODBC 驅(qū)動(dòng)器:
1.Microsoft Access 2016 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
1.Microsoft Access Database Engine 2016 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=54920
2.Microsoft Access 2010 數(shù)據(jù)庫(kù)引擎可再發(fā)行程序包
2.Microsoft Access Database Engine 2010 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=13255
右擊文件accessdatabaseengine_X64.exe(約79.5Mb大?。┻x擇以管理員模式運(yùn)行即可安裝【此處使用版本為2016】
[
報(bào)錯(cuò):Microsoft office Click-to-Run Service (Process ld: 4240)
解決:打開(kāi)任務(wù)管理器,可以看到在后臺(tái)有一個(gè)Microsoft Office Click-to-run(SXS)的進(jìn)程。
]
注意:
1. 如何查看Access是32位還是64位
—>>> 文件 > 賬戶(hù) > 關(guān)于A(yíng)ccess'''
import pyodbc
# python_Access.accdb
DBfile = r"./python_Access.accdb" # 數(shù)據(jù)庫(kù)文件需要帶路徑
print(DBfile)
d = [x for x in pyodbc.drivers() if x.startswith('Microsoft Access Driver')]
print(d)
# 連接數(shù)據(jù)庫(kù)(不需要配置數(shù)據(jù)源),connect()函數(shù)創(chuàng)建并返回一個(gè) Connection 對(duì)象
# 1.創(chuàng)建鏈接
conn = pyodbc.connect(r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;")
# cursor()使用該連接創(chuàng)建(并返回)一個(gè)游標(biāo)或類(lèi)游標(biāo)的對(duì)象
# 2.創(chuàng)建游標(biāo)
cursor = conn.cursor()
# cnxn = pyodbc.connect('DSN=pyAcc.mdb;PWD=password')
# cursor = cnxn.cursor()
print('“““““““ 查詢(xún)所有表名 “““““““')
for table_info in cursor.tables(tableType='TABLE'):
print(table_info.table_name)
# 3.創(chuàng)建SQL查詢(xún)語(yǔ)句
# SQL = "SELECT * from datatable;"
SQL = "SELECT * from 銷(xiāo)售出庫(kù)詳情 where id<10;"
# 4.執(zhí)行查詢(xún)
datas = cursor.execute("SELECT * from 銷(xiāo)售出庫(kù)詳情") # <pyodbc.Cursor object at 0x000001B851E04BB0>
print(type(datas))
for row in cursor.execute(SQL):
print(row) # <class 'pyodbc.Row'>
print(type(row))
cursor.close()
conn.close()
拓展知識(shí):
原創(chuàng)文章,作者:九賢生活小編,如若轉(zhuǎn)載,請(qǐng)注明出處:http://xiesong.cn/83277.html