用python搭建数据库

网站编辑2023-05-12 12:18:25674

首先,我们需要安装一个数据库。在本文中,我们将使用 MySQL 作为我们的数据库。你可以从 MySQL 官网下载并安装 MySQL。

接下来,我们需要安装 Python MySQL Connector。你可以使用 pip 命令来安装它:

```

pip install mysql-connector-python

```

在 Python 中连接 MySQL 数据库非常简单。我们只需要使用 MySQL Connector 提供的 `connect()` 函数即可。以下是一个连接到 MySQL 数据库的示例代码:

```python

import mysql.connector

mydb = mysql.connector.connect(

host="localhost",

user="yourusername",

password="yourpassword"

)

print(mydb)

```

在上面的代码中,我们使用 `connect()` 函数连接到 MySQL 数据库。我们需要提供数据库的主机名、用户名和密码。如果连接成功,我们将会看到一个类似于下面的输出:

```

```

接下来,我们需要创建一个数据库。我们可以使用 `cursor()` 方法创建一个游标对象,然后使用 `execute()` 方法执行 SQL 语句。以下是一个创建数据库的示例代码:

```python

import mysql.connector

mydb = mysql.connector.connect(

host="localhost",

user="yourusername",

password="yourpassword"

)

mycursor = mydb.cursor()

mycursor.execute("CREATE DATABASE mydatabase")

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句创建了一个名为 `mydatabase` 的数据库。

现在,我们已经成功地创建了一个数据库。接下来,我们需要创建一个表。我们可以使用 `execute()` 方法执行一个 `CREATE TABLE` 语句来创建一个表。以下是一个创建表的示例代码:

```python

import mysql.connector

mydb = mysql.connector.connect(

host="localhost",

user="yourusername",

password="yourpassword",

database="mydatabase"

)

mycursor = mydb.cursor()

mycursor.execute("CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))")

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句创建了一个名为 `customers` 的表,该表包含两个列:`name` 和 `address`。

现在,我们已经成功地创建了一个表。接下来,我们需要向表中插入一些数据。我们可以使用 `execute()` 方法执行一个 `INSERT INTO` 语句来插入数据。以下是一个插入数据的示例代码:

```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, "record inserted.")

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句向 `customers` 表中插入了一条记录。我们使用 `%s` 占位符来代替实际的值,并将实际的值作为元组传递给 `execute()` 方法。最后,我们使用 `commit()` 方法提交事务,并打印出插入的记录数。

现在,我们已经成功地向表中插入了一些数据。接下来,我们需要从表中查询数据。我们可以使用 `execute()` 方法执行一个 `SELECT` 语句来查询数据。以下是一个查询数据的示例代码:

```python

import mysql.connector

mydb = mysql.connector.connect(

host="localhost",

user="yourusername",

password="yourpassword",

database="mydatabase"

)

mycursor = mydb.cursor()

mycursor.execute("SELECT * FROM customers")

myresult = mycursor.fetchall()

for x in myresult:

print(x)

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句从 `customers` 表中查询了所有记录。我们使用 `fetchall()` 方法获取所有查询结果,并使用一个循环遍历结果并打印出每一条记录。

现在,我们已经成功地查询了一些数据。接下来,我们需要更新一些数据。我们可以使用 `execute()` 方法执行一个 `UPDATE` 语句来更新数据。以下是一个更新数据的示例代码:

```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, "record(s) affected")

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句更新了 `customers` 表中名为 `John` 的记录的地址。我们使用 `commit()` 方法提交事务,并打印出受影响的记录数。

最后,我们需要删除一些数据。我们可以使用 `execute()` 方法执行一个 `DELETE` 语句来删除数据。以下是一个删除数据的示例代码:

```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, "record(s) deleted")

```

在上面的代码中,我们使用 `execute()` 方法执行了一个 SQL 语句,该语句删除了 `customers` 表中名为 `John` 的记录。我们使用 `commit()` 方法提交事务,并打印出删除的记录数。

到此为止,我们已经成功地使用 Python 搭建了一个 MySQL 数据库,并学习了如何连接数据库、创建表、插入数据、查询数据、更新数据和删除数据。

最新推荐

右侧广告图1
  • 数据库审计

    在满足等保2.0‘安全审计’相关要求的同时,智能解析数据库通信流量,细粒度审计数据库访问行为,通过对数据库全量行为的审计溯源、危险攻击的实时告警、风险语句的智能预警,提供敏感的数据库资产安全的监控保障

    ¥3000.00/月

    等保合规

  • 云数据库 ClickHouse

    开箱即用,高吞吐写入,秒级实时分析、自动弹性优势。 广泛应用于流量分析、广告营销分析、行为分析、人群划分、客户画像、敏捷BI、数据集市、网络监控、分布式服务和链路监控等业务场景。

    ¥1473.40/月

    1年85折

  • 云数据库 RDS

    高性价比、稳定安全可靠的云数据库 RDS 即开即用、“自动驾驶”,助您免除数据库运维烦恼

    ¥88.00/年

    折扣优惠,高性价比,安全稳定

右侧广告图2