数据库数据插入实战:创建表与插入数据

🎊🎊 在本实战项目中,我们将通过一个电子商务平台的数据库设计来演示如何创建表和进行数据插入。我们将创建用户表、产品表和订单表,并插入一些示例数据。🎉🎉

第一步:创建数据库

首先,我们需要创建一个数据库来存储我们的电子商务平台数据。

复制代码
CREATE DATABASE IF NOT EXISTS ECommerce;
USE ECommerce;

第二步:创建表

接下来,我们将创建三个表:users, products, 和 orders

创建用户表

复制代码
CREATE TABLE IF NOT EXISTS users (
    user_id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL UNIQUE,
    email VARCHAR(100) NOT NULL UNIQUE,
    password VARCHAR(255) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

创建产品表

复制代码
CREATE TABLE IF NOT EXISTS products (
    product_id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    description TEXT,
    price DECIMAL(10, 2) NOT NULL,
    stock INT NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

创建订单表

复制代码
CREATE TABLE IF NOT EXISTS orders (
    order_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT NOT NULL,
    order_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    status VARCHAR(50),
    total_amount DECIMAL(10, 2) NOT NULL,
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

第三步:插入数据

现在表已经创建好了,我们可以开始插入数据。

插入用户数据

复制代码
INSERT INTO users (username, email, password) VALUES
('john_doe', 'john@example.com', 'password123'),
('jane_smith', 'jane@example.com', 'securepass456');

插入产品数据

复制代码
INSERT INTO products (name, description, price, stock) VALUES
('Laptop', 'High performance laptop', 999.99, 50),
('Smartphone', 'Latest model smartphone', 699.99, 100),
('Headphones', 'Noise cancelling headphones', 199.99, 150);

插入订单数据

在插入订单数据之前,我们需要确保 users 表中已经存在用户,因为 orders 表中有外键约束。

复制代码
-- 假设用户john_doe已经存在,其user_id为1
INSERT INTO orders (user_id, status, total_amount) VALUES
(1, 'Pending', 999.99);

第四步:验证数据

最后,我们可以查询表以验证数据是否正确插入。

复制代码
-- 查询用户数据
SELECT * FROM users;

-- 查询产品数据
SELECT * FROM products;

-- 查询订单数据
SELECT * FROM orders;

结论

通过本实战项目,我们展示了如何在一个电子商务平台的数据库中创建表和插入数据。这包括了创建数据库、定义表结构、插入示例数据以及验证数据的完整性。希望这个项目能够帮助你理解数据库设计和数据操作的基本流程。如果你有任何问题或需要进一步的帮助,请随时在评论区提出。

相关推荐
倔强的石头_12 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号34 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏4 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐4 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再4 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip
tryCbest4 天前
数据库SQL学习
数据库·sql