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

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

第一步:创建数据库

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

复制代码
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;

结论

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

相关推荐
W.Buffer2 小时前
通用:MySQL-深入理解MySQL中的MVCC:原理、实现与实战价值
数据库·mysql
一只小bit3 小时前
MySQL 库的操作:从创建配置到备份恢复
服务器·数据库·mysql·oracle
sanx183 小时前
专业电竞体育数据与系统解决方案
前端·数据库·apache·数据库开发·时序数据库
养生技术人5 小时前
Oracle OCP认证考试题目详解082系列第57题
运维·数据库·sql·oracle·开闭原则
不良人天码星6 小时前
redis-zset数据类型的常见指令(sorted set)
数据库·redis·缓存
心灵宝贝6 小时前
libopenssl-1_0_0-devel-1.0.2p RPM 包安装教程(openSUSE/SLES x86_64)
linux·服务器·数据库
程序新视界8 小时前
MySQL中,IS NULL和IS NOT NULL不会走索引?错!
数据库·mysql·dba
wdfk_prog8 小时前
闹钟定时器(Alarm Timer)初始化:构建可挂起的定时器基础框架
java·linux·数据库
许长安8 小时前
Redis(二)——Redis协议与异步方式
数据库·redis·junit
java_python源码9 小时前
python高校心理健康服务小程序(源码+文档+调试+基础修改+答疑)
数据库·sqlite