當前位置:首頁 » 數據倉庫 » python怎麼讀取資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

python怎麼讀取資料庫

發布時間: 2022-09-13 10:59:40

A. python如何訪問資料庫

1.背景:

python提供了很多資料庫介面, 常用的資料庫有 MS sql Server /mysql /oracle 等。

打開鏈接 https://wiki.python.org/moin/DatabaseInterfaces

是python 關於資料庫介面的一個總結 , 可以看到python支持的訪問的資料庫系統。

2.模塊:

python 主要是通過模塊和資料庫連接的。

2.1 安裝模塊:

如果使用anconda,本身就會集合很多模塊,不需要手動安裝。如果用pycharm就要手動安裝模塊。

安裝模塊流程:

下載模塊擴展包放到路徑下——>cmd找到相應路徑——> pip install +擴展包名字

下面列舉一些常用連接資料庫的模塊:pymssql / sqlite3/ PyMySQL/pyodbc/odbc/adodbapi

不同模塊連接的資料庫不同, 支持的版本系統有的也不一樣。但是大體用法都是相近的, 因為有DB-API

相關推薦:《Python教程》

3.Python DB-API

3.1背景:

在沒有DB-API 之前, 不同資料庫有不同的資料庫介面程序, 這就導致python 訪問 database 的介面程序非常混亂。如果我們學習了python 訪問 mysql 的介面程序, 然後要切換到另一個資料庫上, 我們還要在學習另外一個資料庫的介面程序。python DB-API就是為了解決介面程序混亂而生成的。有了DB-API, 在不同資料庫上移植代碼就變得簡單的多了。

3.2Python DB-API:

Python 定義了一套操作資料庫的 DB-API 介面,它是一個規范,定義了一系列必須的對象和資料庫存取方式,以便為不同的底層資料庫系統提供一致的訪問介面

這個鏈接就是python 官方給定的 DB-API 的說明 https://www.python.org/dev/peps/pep-0249/

3.3 Python DB--API的內容:

連接對象:

?Connect()創建連接:host/server /user/password/db connect方法生成一個connect對象, 我們通過這個對象來訪問資料庫。符合標準的模塊都會實現connect方法。

?close():關閉連接

?commit():提交當前事務。做出某些更改後確保已經進行了提交,這樣才可以將這些修改真正地保存到database中

?rollback() 回滾上一次調用 commit()以來對資料庫所做的更改

?cursor():創建游標。系統為用戶開通的一個數據緩沖區,用於存放SQL語句執行結果。cursor游標是有狀態的,它可以記錄當前已經取到結果的第幾個記錄了,因此,一般你只可以遍歷結果集一次。在上面的情況下,如果執行fetchone()會返回為空。這一點在測試時需要注意

游標對象:

?Execute()執行一個資料庫查詢或命令。 execute 執行sql 語句之後運行的結果不會直接output 出來 , 而是放到了一個緩存區, 要用 fetch語句+print 可以查詢sql運行的結果

?fetchone ()得到結果集的下一行

?fetchmany(size)得到結果集的下幾行

?fetchall()返回結果集中剩下的所有行

?rowcount 返回影響的行數

?Close()關閉游標對象

3.4Python DB--API的工作原理及流程:

如圖所示如果把python 和資料庫比作兩個不同的地點, connection 就是路, 能連接python和database。cursor就像在路上行駛的小貨車, 可以用於執行sql 語句, 以及存儲sql 運行的結果。

流程:

4.MS SQL Server 示例:

4.1 導入模塊、創建連接:

4.2 創建游標: 游標創建之後就可以對資料庫進行查詢更改了!

4.3對數據進行操作(創建表、插入行、更新數據、增加列、刪除行、列、表):

4.4 查詢 獲取行:

5.其他:

使用游標的時候要注意, 每次連接只能有一個游標查詢處於活躍狀態。 code演示:

execute()循環和 executemany() 插入100000 條數據測速:

B. 如何用python讀取oracle資料庫

  1. 下載cx_Oracle,下載之後就可以使用了。

  2. 簡單的使用流程如下:

1.引用模塊cx_Oracle2.連接資料庫3.獲取cursor4.使用cursor進行各種操作5.關閉cursor6.關閉連接

參考代碼:

import cx_Oracle #引用模塊cx_Oracleconn=cx_Oracle.connect('load/123456@localhost/ora11g') #連接資料庫c=conn.cursor() #獲取cursorx=c.execute('select sysdate from al') #使用cursor進行各種操作x.fetchone()c.close() #關閉cursorconn.close() #關閉連接

C. 如何用python連接 tableau 資料庫,然後讀取數據

選擇「數據」>「連接到數據」或按鍵盤上的 Ctrl + D。也可以在開始頁面上選擇「連接到數據」選項。
2. 在「連接到數據」頁面上,選擇要連接的數據類型。也可以選擇保存的數據連接(TDS 文件)打開一個 Tableau Server 數據源。
3. 連接到數據的另一種方式是從工作簿導入。工作簿可以包含與不同數據源的多個連接。若要從工作簿導入連接,請在「連接到數據」對話框中單擊「選擇保存的連接」選項卡底部的「從工作簿導入」按鈕。
顯示連接信息
可以顯示有關連接的信息,方法是在「數據」菜單中選擇數據源,然後選擇「屬性」。下面顯示了示例數據源的屬性。
連接到自定義 SQL 查詢
對於大多數關系數據源,可以連接到特定查詢,而非整個數據源。
在連接對話框中選擇「自定義 SQL」。
在文本框中鍵入或粘貼查詢。單擊文本框右上角的「瀏覽」按鈕 會打開更大的編輯窗口,可進行更復雜的查詢或添加參數。
注意:完成連接後,Tableau 的數據窗口只顯示相關欄位。
如果 SQL 查詢引用重復列,則在嘗試使用 Tableau 中的列之一時,可能會出現錯誤。即使查詢有效,也會發生這種情況。例如,考慮以下查詢:
SELECT * from authors, titleauthor where authors.au_id = titleauthor.au_id 該查詢有效,但因為 au_id 欄位在「authors」表和「titleauthor」表中都存在,因此該欄位不明確。Tableau 將連接到查詢,但只要嘗試使用 au_id 欄位,就會出現錯誤。原因是 Tableau 不知道要引用哪個表。
編輯連接
在「數據」菜單中選擇數據源,然後選擇「編輯連接」。

D. 如何用python連接 tableau 資料庫,然後讀取數據

鏈接:http://pan..com/s/1BWBtFMYeQazJWUYSmHi5fw

提取碼:yz10

Python&Tableau:商業數據分析與可視化。Tableau的程序很容易上手,各公司可以用它將大量數據拖放到數字「畫布」上,轉眼間就能創建好各種圖表。這一軟體的理念是,界面上的數據越容易操控,公司對自己在所在業務領域里的所作所為到底是正確還是錯誤,就能了解得越透徹。

快速分析:在數分鍾內完成數據連接和可視化。Tableau 比現有的其他解決方案快 10 到 100 倍。大數據,任何數據:無論是電子表格、資料庫還是 Hadoop 和雲服務,任何數據都可以輕松探索。

課程目錄:

前置課程-Python在咨詢、金融、四大等領域的應用以及效率提升

Python基礎知識

Python入門:基於Anaconda與基於Excel的Python安裝和界面

簡單的數學計算

Python數據分析-時間序列2-數據操作與繪圖

Python數據分析-時間序列3-時間序列分解

......

E. python怎麼調用資料庫

安裝MySQL驅動

由於MySQL伺服器以獨立的進程運行,並通過網路對外服務,所以,需要支持Python的MySQL驅動來連接到MySQL伺服器。
MySQL官方提供了mysql-connector-python驅動,但是安裝的時候需要給pip命令加上參數--allow-external:
pip install mysql-connector-python --allow-external mysql-connector-python

如果上面的命令安裝失敗,可以試試另一個驅動:
pip install mysql-connector

除了使用mysql.connector還可以使用pymysql

F. python可以讀取資料庫里文檔嗎

python讀取文件內容的方法:
一.最方便的方法是一次性讀取文件中的所有內容並放置到一個大字元串中:
all_the_text = open('thefile.txt').read( )
# 文本文件中的所有文本
all_the_data = open('abinfile','rb').read( )
# 二進制文件中的所有數據
為了安全起見,最好還是給打開的文件對象指定一個名字,這樣在完成操作之後可以迅速關閉文件,防止一些無用的文件對象佔用內存。舉個例子,對文本文件讀取:
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
不一定要在這里用Try/finally語句,但是用了效果更好,因為它可以保證文件對象被關閉,即使在讀取中發生了嚴重錯誤。
二.最簡單、最快,也最具Python風格的方法是逐行讀取文本文件內容,並將讀取的數據放置到一個字元串列表中:
list_of_all_the_lines = file_object.readlines( )
這樣讀出的每行文本末尾都帶有"\n"符號;如果你不想這樣,還有另一個替代的辦法,比如:
list_of_all_the_lines = file_object.read( ).splitlines( )
list_of_all_the_lines = file_object.read( ).split('\n')
list_of_all_the_lines = [L.rstrip('\n') for L in file_object]
最簡單最快的逐行處理文本文件的方法是,用一個簡單的for循環語句:
for line in file_object:
process line
這種方法同樣會在每行末尾留下"\n"符號;可以在for循環的主體部分加一句:
lineline = line.rstrip('\n')
或者,你想去除每行的末尾的空白符(不只是'\n'\),常見的辦法是:
lineline = line.rstrip( )

G. python如何使用資料庫

你可以訪問Python資料庫介面及API查看詳細的支持資料庫列表。不同的資料庫你需要下載不同的DB API模塊,例如你需要訪問Oracle資料庫和Mysql數據,你需要下載Oracle和MySQL資料庫模塊。
DB-API 是一個規范. 它定義了一系列必須的對象和資料庫存取方式, 以便為各種各樣的底層資料庫系統和多種多樣的資料庫介面程序提供一致的訪問介面 。
Python的DB-API,為大多數的資料庫實現了介面,使用它連接各資料庫後,就可以用相同的方式操作各資料庫。

H. python怎麼打開資料庫文件

以打開mysql資料庫為例來說明:
#!/usr/bin/python
import MySQLdb
# 打開資料庫連接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )
#打開游標
cursor = db.cursor()
# 執行資料庫查詢
cursor.execute("SELECT VERSION()")
# 獲取結果集的第一行
data = cursor.fetchone()
print "Database version : %s " % data
# 關閉連接
db.close()