返回
数据库与表的创建:Python Web开发之旅的第四步
后端
2023-11-12 18:16:35
Python Web开发(四):从零开始创建数据库和表
在Python Web开发中,数据库是一个至关重要的组成部分。它负责存储和管理数据,是Web应用程序的基础。在这一步,我们将深入浅出地探讨如何从零开始创建数据库和表,并使用Python连接数据库和执行SQL查询。
一、数据库与表的基础知识
1. 数据库
数据库是一种组织和存储数据的集合,通常由多个表组成。每个表由多个字段组成,每个字段存储特定类型的数据。数据库管理系统(DBMS)是管理和操作数据库的软件,负责数据的存储、检索、更新和删除。
2. 表
表是数据库中的一个逻辑单元,由多个行和列组成。每行代表一个数据记录,每列代表一个字段。表中的数据通常按照主键进行排序,主键是唯一标识每条记录的字段。
3. 字段
字段是表中存储数据的基本单元。每个字段都有一个名称、数据类型和长度。数据类型决定了字段可以存储的数据类型,如文本、数字、日期等。长度限制了字段可以存储的数据量。
4. 主键
主键是表中唯一标识每条记录的字段。主键的值必须是唯一的,不能重复。主键通常是一个自增长的整数字段,但也可以是其他类型的字段。
5. 外键
外键是建立两个表之间关系的字段。外键字段的值引用另一个表的主键值。外键可以确保数据的一致性,并防止数据丢失。
二、SQL语言
SQL(Structured Query Language)是一种用于与数据库交互的语言。它允许用户创建和修改数据库、表和字段,并对数据进行查询、插入、更新和删除。
1. 创建数据库
CREATE DATABASE database_name;
2. 创建表
CREATE TABLE table_name (
column1_name data_type,
column2_name data_type,
...
PRIMARY KEY (column_name)
);
3. 插入数据
INSERT INTO table_name (column1_name, column2_name, ...)
VALUES (value1, value2, ...);
4. 查询数据
SELECT column1_name, column2_name, ...
FROM table_name
WHERE condition;
5. 更新数据
UPDATE table_name
SET column1_name = new_value1,
column2_name = new_value2,
...
WHERE condition;
6. 删除数据
DELETE FROM table_name
WHERE condition;
三、使用Python连接数据库
1. 导入必要的库
import mysql.connector
2. 连接数据库
connection = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="database_name"
)
3. 创建游标
游标是执行SQL查询的工具。
cursor = connection.cursor()
4. 执行SQL查询
cursor.execute("SELECT * FROM table_name")
5. 获取查询结果
result = cursor.fetchall()
四、实践操作
1. 创建数据库和表
import mysql.connector
connection = mysql.connector.connect(
host="localhost",
user="root",
password="password"
)
cursor = connection.cursor()
cursor.execute("CREATE DATABASE orders")
cursor.execute("USE orders")
cursor.execute("""
CREATE TABLE orders (
id INT NOT NULL AUTO_INCREMENT,
customer_name VARCHAR(255) NOT NULL,
product_name VARCHAR(255) NOT NULL,
quantity INT NOT NULL,
price FLOAT NOT NULL,
PRIMARY KEY (id)
)
""")
connection.commit()
cursor.close()
connection.close()
2. 插入数据
import mysql.connector
connection = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="orders"
)
cursor = connection.cursor()
cursor.execute("""
INSERT INTO orders (customer_name, product_name, quantity, price)
VALUES
('John Doe', 'iPhone 13', 1, 999),
('Jane Smith', 'MacBook Pro', 1, 1299),
('Michael Jones', 'iPad Air', 2, 599)
""")
connection.commit()
cursor.close()
connection.close()
3. 查询数据
import mysql.connector
connection = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="orders"
)
cursor = connection.cursor()
cursor.execute("SELECT * FROM orders")
result = cursor.fetchall()
for order in result:
print(order)
cursor.close()
connection.close()
总结
在这一步中,我们学习了如何从零开始创建数据库和表,并使用Python连接数据库和执行SQL查询。掌握这些知识,我们就可以在Python Web应用程序中存储和管理数据,并与数据库进行交互。