📜  Python数据库教程(1)

📅  最后修改于: 2023-12-03 14:46:44.805000             🧑  作者: Mango

Python数据库教程

简介

Python是一种通用编程语言,也是用于开发各种类型的应用程序的一种高级语言。Python编程语言与许多数据库交互的能力,使它成为一种流行的数据库开发语言。

在Python中,您可以使用多种MySQL、SQLite、PostgreSQL等数据库管理系统来管理数据。此外,Python还支持多种数据库API,包括MySQLdb、psycopg2和sqlite3等。

安装Python数据库API

安装Python数据库API时,您需要安装有关数据库的库。以下是MySQL、SQLite、PostgreSQL和Oracle的库:

MySQLdb
  • 安装MySQLdb库:pip install MySQL-python
  • 导入库:import MySQLdb
SQLite
  • 安装sqlite3库:您无需安装任何其他库。Python已包含sqlite3库。
  • 导入库:import sqlite3
PostgreSQL
  • 安装psycopg2库:pip install psycopg2
  • 导入库:import psycopg2
Oracle
  • 安装cx_Oracle库:pip install cx_Oracle
  • 导入库:import cx_Oracle
连接数据库

在Python中与数据库交互时,您需要打开一个数据库连接来连接到数据库。

MySQLdb连接
import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "testdb")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL查询语句
sql = "SELECT * FROM employees"

# 执行SQL语句
cursor.execute(sql)

# 获取所有结果
results = cursor.fetchall()

# 打印结果
for row in results:
    print(row)

# 关闭数据库连接
db.close()
SQLite连接
import sqlite3

# 打开数据库连接
db = sqlite3.connect('test.db')

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL查询语句
sql = "SELECT * FROM employees"

# 执行SQL语句
cursor.execute(sql)

# 获取所有结果
results = cursor.fetchall()

# 打印结果
for row in results:
    print(row)

# 关闭数据库连接
db.close()
PostgreSQL连接
import psycopg2

# 打开数据库连接
db = psycopg2.connect(database="testdb", user="testuser", password="test123", host="localhost", port="5432")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL查询语句
sql = "SELECT * FROM employees"

# 执行SQL语句
cursor.execute(sql)

# 获取所有结果
results = cursor.fetchall()

# 打印结果
for row in results:
    print(row)

# 关闭数据库连接
db.close()
Oracle连接
import cx_Oracle

# 打开数据库连接
db = cx_Oracle.connect('testuser/test123@localhost/XE')

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL查询语句
sql = "SELECT * FROM employees"

# 执行SQL语句
cursor.execute(sql)

# 获取所有结果
results = cursor.fetchall()

# 打印结果
for row in results:
    print(row)

# 关闭数据库连接
db.close()
执行SQL查询

执行SQL查询时,您需要使用execute()方法并传递SQL查询作为参数。然后,您可以使用fetchall()方法来获取所有结果。

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "testdb")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL查询语句
sql = "SELECT * FROM employees"

# 执行SQL语句
cursor.execute(sql)

# 获取所有结果
results = cursor.fetchall()

# 打印结果
for row in results:
    print(row)

# 关闭数据库连接
db.close()
执行SQL插入

执行SQL插入时,您需要使用execute()方法并传递SQL插入作为参数。然后,您需要使用commit()方法来提交更改。

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "testdb")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL插入语句
sql = "INSERT INTO employees(id, name, age) VALUES (1, 'John Smith', 25)"

# 执行SQL插入
cursor.execute(sql)

# 提交更改
db.commit()

# 关闭数据库连接
db.close()
执行SQL更新

执行SQL更新时,您需要使用execute()方法并传递SQL更新作为参数。然后,您需要使用commit()方法来提交更改。

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "testdb")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL更新语句
sql = "UPDATE employees SET age = 26 WHERE name = 'John Smith'"

# 执行SQL更新
cursor.execute(sql)

# 提交更改
db.commit()

# 关闭数据库连接
db.close()
执行SQL删除

执行SQL删除时,您需要使用execute()方法并传递SQL删除作为参数。然后,您需要使用commit()方法来提交更改。

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "testdb")

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL删除语句
sql = "DELETE FROM employees WHERE name = 'John Smith'"

# 执行SQL删除
cursor.execute(sql)

# 提交更改
db.commit()

# 关闭数据库连接
db.close()
结论

本文介绍了Python数据库编程的基础知识,包括安装Python数据库API和连接数据库。另外,还介绍了如何执行SQL查询、插入、更新和删除操作。希望本文可以帮助您开始使用Python进行数据库编程。