Python数据库操作与SQL查询
发布时间: 2024-02-14 18:14:09 阅读量: 9 订阅数: 18
# 1. Python数据库连接
在本章节中,我们将介绍Python如何连接数据库。首先需要安装并配置适合所使用数据库的驱动程序,然后通过Python代码建立数据库连接,并设置连接参数。
## 1.1 安装并配置数据库驱动
要连接不同类型的数据库,需要安装相应的数据库驱动程序。比如,要连接MySQL数据库,可以使用`pymysql`库;要连接SQLite数据库,可以直接使用内置的`sqlite3`库。
```python
# 示例:安装MySQL数据库驱动pymysql
!pip install pymysql
```
## 1.2 连接数据库
使用安装好的数据库驱动,我们可以通过Python代码连接数据库。下面是一个连接MySQL数据库的简单示例:
```python
import pymysql
# 建立数据库连接
conn = pymysql.connect(
host='localhost',
user='root',
password='password',
database='testDB'
)
```
## 1.3 数据库连接参数设置
在建立数据库连接时,还可以设置一些参数,比如设置字符集、自动提交等。下面是一个设置字符集和自动提交参数的示例:
```python
import pymysql
# 建立数据库连接并设置参数
conn = pymysql.connect(
host='localhost',
user='root',
password='password',
database='testDB',
charset='utf8mb4',
autocommit=True
)
```
通过以上几个步骤,我们可以成功连接数据库,在接下来的章节中,将会介绍如何操作数据库以及进行SQL查询等内容。
# 2. Python数据库操作基础
数据库操作是使用Python进行数据存储和查询的基础知识,本章将介绍Python中数据库的基本操作,包括创建数据库及数据表、插入数据、更新数据和删除数据。
### 2.1 创建数据库及数据表
在Python中,我们可以使用SQL命令来创建数据库及数据表。下面是一个创建名为`mydatabase`的数据库和名为`customers`的数据表的示例代码:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword"
)
# 创建数据库
mycursor = mydb.cursor()
mycursor.execute("CREATE DATABASE mydatabase")
# 创建数据表
mycursor.execute("USE mydatabase")
mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")
```
### 2.2 插入数据
向数据库中插入数据是常见的操作之一。可以使用INSERT INTO语句将数据插入到数据表中。以下示例展示了如何插入一条名为John的客户记录:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# 插入数据
mycursor = mydb.cursor()
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)
mydb.commit()
print(mycursor.rowcount, "记录插入成功。")
```
### 2.3 更新数据
当需要修改已有数据时,可以使用UPDATE语句更新数据。以下示例演示了如何更新名为John的客户的地址:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# 更新数据
mycursor = mydb.cursor()
sql = "UPDATE customers SET address = 'Canyon 123' WHERE name = 'John'"
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, "记录被修改。")
```
### 2.4 删除数据
使用DELETE语句可以从数据表中删除记录。以下示例演示了如何删除名为John的客户记录:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# 删除数据
mycursor = mydb.cursor()
sql = "DELETE FROM customers WHERE name = 'John'"
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, "记录被删除。")
```
以上是Python数据库操作基础的内容,包括了创建数据库及数据表、插入数据、更新数据和删除数据的示例代码。通过这些操作,我们可以灵活地对数据库进行增删改查的操作。
# 3. Python与SQL查询
在Python中操作数据库最常见的场景之一就是执行SQL查询语句来检索需要的数据。本章将介绍Python中如何与SQL进行交互,包括SQL查询基础语法、查询数据及结果集处理以及使用参数化查询。
#### 3.1 SQL查询基础语法
在执行SQL查询之前,首先需要对SQL查询语法有一定的了解。SQL(Structured Query Language)是一种用于与关系型数据库进行交互的
0
0