Python 常用資料庫有哪些?

在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python常用的資料庫。

一、關係型資料庫

關係型數據是以表格的形式管理數據的資料庫。這種資料庫最常用的編程語言是SQL。Python中常用的關係型資料庫有MySQL, PostgreSQL, SQLite等。

1. MySQL

MySQL是一個非常流行的關係型數據管理系統,由Oracle公司開發和維護。它是用C和C++編寫的,也是許多Web應用程序的首選資料庫之一。使用Python來操作MySQL,需要安裝MySQL Connector/Python,示例代碼如下:

import mysql.connector

# 創建 MySQL 連接
mydb = mysql.connector.connect(
  host="localhost",
  user="username",
  password="password",
  database="mydatabase"
)

# 執行查詢語句
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM customers")
myresult = mycursor.fetchall()

# 輸出結果
for x in myresult:
  print(x)

2. PostgreSQL

PostgreSQL是一個免費的、開源的關係型資料庫管理系統,使用貼近SQL的語言。它是許多開源應用程序的首選資料庫之一,如Django。使用Python操作PostgreSQL,需要安裝psycopg2庫,示例代碼如下:

import psycopg2

# 創建 PostgreSQL 連接
conn = psycopg2.connect(database="mydatabase", user="username", password="password", host="localhost", port="5432")

# 執行查詢語句
cur = conn.cursor()
cur.execute("SELECT * FROM mytable")
rows = cur.fetchall()

# 輸出結果
for row in rows:
    print row

二、非關係型資料庫

非關係型資料庫是一種靈活的、存儲非結構化或半結構化數據的資料庫類型,通常用於存儲大量數據。Python常用的非關係型資料庫有MongoDB、Redis等。

1. MongoDB

MongoDB是一種開源的文檔型資料庫,使用JSON樣式的結構代替了傳統的行列格式,使數據格式更加靈活。使用Python操作MongoDB,需要安裝PyMongo庫,示例代碼如下:

from pymongo import MongoClient

# 連接 MongoDB
client = MongoClient()

# 獲取資料庫句柄
db = client.test

# 獲取集合
collection = db.my_collection

# 插入文檔
post = {"author": "Mike",
        "text": "My first blog post!",
        "tags": ["mongodb", "python", "pymongo"]}
posts = collection.posts
post_id = posts.insert_one(post).inserted_id

# 查詢文檔
print(posts.find_one({"author": "Mike"}))

2. Redis

Redis是一個高性能的鍵值存儲資料庫,它支持多種數據類型,如字元串、列表、集合、排序集等。使用Python操作Redis,需要安裝redis-py庫,示例代碼如下:

import redis

# 創建Redis連接
r = redis.Redis(host='localhost', port=6379, db=0)

# 存儲一個鍵值對
r.set('foo', 'bar')

# 獲取鍵對應的值
value = r.get('foo')
print(value)

三、圖形資料庫

圖形資料庫是非關係型資料庫中的一類,主要是為了管理具有圖形結構數據的資料庫。Python中常用的圖形資料庫有Neo4j、OrientDB等。

1. Neo4j

Neo4j是一個高性能的圖形資料庫,使用節點和關聯構建數據模型,提供了SQL語言以及使用Java/C++/Python等語言的API。使用Python操作Neo4j,需要安裝Py2neo庫,示例代碼如下:

from py2neo import Graph, Node, Relationship

# 創建Neo4j連接
graph = Graph("bolt://localhost", auth=("username", "password"))

# 創建一個節點
a = Node("Person", name="Alice")

# 創建另一個節點
b = Node("Person", name="Bob")

# 建立關係
ab = Relationship(a, "KNOWS", b)

# 將節點和關係存入Neo4j
graph.create(ab)

2. OrientDB

OrientDB是一個面向文檔的圖形資料庫,由Java編寫。它支持SQL語言並提供了Java/C++/Python等語言的API。使用Python操作OrientDB,需要安裝PyOrient庫,示例代碼如下:

from pyorient import OrientDB

# 創建OrientDB連接
client = OrientDB("localhost", 2424)
session_id = client.connect("root", "password")

# 執行查詢操作
client.db_open("my_database", "admin", "password")
result = client.command("SELECT * FROM my_class")
for item in result:
    print item.oRecordData['field_name']

四、小結

Python中常用的資料庫類型包括關係型資料庫、非關係型資料庫和圖形資料庫。在選擇資料庫時,需要根據應用場景和需求選擇適合自己的類型。

原創文章,作者:NMQAP,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/375540.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
NMQAP的頭像NMQAP
上一篇 2025-04-29 12:49
下一篇 2025-04-29 12:49

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29

發表回復

登錄後才能評論