eshop(商城管理系统)MySQL源码

2023-10-25 17:44

本文主要是介绍eshop(商城管理系统)MySQL源码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

-- 实训一 T-SQL操作数据库
-- 一、创建数据库eshop(网上商城数据库),写出下列操作的命令语句
-- 设置客户端字符集编码为gbk    
        set names gbk;
-- 1.    创建数据库eshop 
        create database eshop;

 create database eshop;


-- 2.    打开数据库eshop
        use eshop;

use eshop;


-- 3.    显示数据库中所有表
        show tables;

        show tables;


-- 二、创建数据表
-- 4.    在ESHOP数据库中建立“会员”表,用于存放会员信息:
        create table 会员
        (
            会员编号      varchar(20)      not null  primary  key,
            姓名          varchar(20)      not null,
            性别          char(2)          not null  default  '男',
            出生日期      date,
            住址          varchar(50),
            工资          float              not null,
            密码          varchar(20)      not null   default  '111111',
            电话号码      varchar(11)      not null   unique
        );

   create table 会员(会员编号      varchar(20)      not null  primary  key,姓名          varchar(20)      not null,性别          char(2)          not null  default  '男',出生日期      date,住址          varchar(50),工资          float              not null,密码          varchar(20)      not null   default  '111111',电话号码      varchar(11)      not null   unique);

--     在ESHOP数据库中建立“产品”表,用于存放产品信息:

        create table  产品
        (
            产品编号            char(10)        not null            primary key,
            产品名称            varchar(30)        not null,
            生产日期            date,
            数量        int,
            价格            float,
            备注信息    varchar(50)
        );

--     在ESHOP数据库中建立"订单"表,用于存放订单信息:

        create table 订单
        (
            订单编号        int            not null    auto_increment    primary key,
            会员编号        varchar(20)    not null,
            产品编号        char(10)    not null,
            订购数量        int            not null,
            订单日期        date        not null,
            确认状态        char(1)        not null,
            支付状态        char(1)        not null,
            发货状态        char(1)        not null
        );
-- 5、在“订单”表中创建外键,分别参照'会员'表的会员编号、"产品"表的'产品编号'
        alter table 订单
        add    constraint  fk_会员_订单 foreign key(会员编号)  references  会员(会员编号)
        on delete cascade  on update cascade;

        alter table 订单
        add    constraint fk_产品_订单 foreign key(产品编号) references 产品(产品编号)
        on delete cascade  on update cascade;

     alter table 订单add    constraint  fk_会员_订单 foreign key(会员编号)  references  会员(会员编号)on delete cascade  on update cascade;alter table 订单add    constraint fk_产品_订单 foreign key(产品编号) references 产品(产品编号)on delete cascade  on update cascade;

-- 三、录入数据到数据表
-- 6.    录入数据到ESHOP数据库的会员表:
    -- 对应命令如下:
        insert into  会员(会员编号,姓名,性别,出生日期,住址,工资,密码,电话号码)
        values         
        ('Jinjin','津津有味','女','1982-04-14','北京市',8200.0,'jinjin','13112345678'),
        ('Lfz','刘法治','男','1976-08-26','天津市',4500.0,'lfz0826','13156785678'),
        ('liuzc518','刘志成','男','1972-05-18','江西九江',3500.0,'liuzc518','13112341234'),
        ('wangj','王娟','女','1979-05-18','江西九江',3500.0,'Wj1972','13612345670'),
        ('wangxj','王晓娟','女','1979-05-18','江西九江',3500.0,'Wxj1972','13612345678'),
        ('Wangym','王咏梅','女','1974-08-06','湖南长沙',4000.0,'wangym0806','13211111111'),
        ('wenh','翁红','男','1970-04-20','江西南昌',5500.0,'888888','15345678123'),
        ('zhangsan','张三','男','1982-04-14','北京市',8200.0,'Zs88888','13512345678'),
        ('Zhangzl','张自亮','男','1975-04-20','江西九江',4300.0,'zhangzl','13312312312'),
        ('zhao888','赵云','男','1972-02-12','江西九江',5500.0,'zhao888','13412345678');

--     录入数据到ESHOP数据库的产品表:

        -- 对应命令如下:
        insert into  产品(产品编号,产品名称,生产日期,数量,价格,备注信息)
        values
        ('0130810324','清华同方电脑','2005-12-11',7,8000.0,'优惠多多'),
        ('0140810330','洗衣粉','2005-05-31',1000,8.6,'特价销售'),
        ('0140810332','红彤彤腊肉','2005-05-20',43,15.0,'是一种卫生食品'),
        ('0140810333','力士牌香皂','2005-05-06',22,6.0,'是一种清洁用品'),
        ('0240810330','电动自行车','2005-05-31',10,1586.0,'价廉物美'),
        ('0240810333','自行车','2005-05-31',10,586.0,'价廉物美'),
        ('0910810001','爱国者MP3','2005-05-31',100,450.0,'价廉物美'),
        ('0910810002','商务通','2005-05-20',10,850.0,'价廉物美'),
        ('0910810003','名人好记星','2005-05-31',100,550.0,'价廉物美'),
        ('0910810004','奥美嘉U盘','2005-05-31',100,350.0,'价廉物美');
        
--     录入数据到ESHOP数据库的订单表:

        -- 注意:第6条记录中的产品编号的值0140810324在产品表中不存在,因为外键的关系,不能输入该条记录,所以将0140810324改为0130810324
        -- 注意:第六列字段名'确定状态'应该是'确认状态'

        
        insert into 订单(订单编号,会员编号,产品编号,订购数量,订单日期,确
认状态,支付状态,发货状态)
        values
        (null,'jinjin','0910810004',2,'2005-06-06','1','0','0'),
        (null,'jinjin','0910810004',1,'2005-08-09','1','1','1'),
        (null,'lfz','0910810001',5,'2005-08-09','0','0','0'),
        (null,'lfz','0910810004',2,'2005-06-06','1','1','1'),
        (null,'lfz','0910810004',2,'2005-08-09','1','1','1'),
        (null,'liuzc518','0140810324',1,'2005-10-09','0','0','0'),
        (null,'liuzc518','0910810001',1,'2005-10-09','1','1','0'),
        (null,'liuzc518','0910810004',12,'2005-10-09','1','1','0'),
        (null,'wangym','0910810001',1,'2005-08-09','1','0','0'),
        (null,'zhao888','0240810333',2,'2005-06-06','1','1','0');

    

-- 四、ESHOP数据库中表和表记录的操作
-- 7.    查看'会员'表的建表语句
        show create table 会员;

 show create table 会员;

-- 8.    查看会员表的结构。
        desc 会员;

     desc 会员;

-- 9.    在会员表中新增一列电子邮件m_mail(VARCHAR类型,长度20)。
        alter table 会员
        add m_mail varchar(20);

alter table 会员add m_mail varchar(20);

-- 10.    删除会员表中列m_mail。
        alter table 会员
        drop m_mail;

      alter table 会员drop m_mail;

-- 五、表数据操作
-- 11.    向'订单'表插入一条订单信息。 
insert into 订单(订单编号,会员编号,产品编号,订购数量,订单日期,确认状态,支付状态,发货状态)
values
(null,'jinjin','0910810004',2,'2005-06-06','1','0','0');

insert into 订单(订单编号,会员编号,产品编号,订购数量,订单日期,确认状态,支付状态,发货状态)
values
(null,'jinjin','0910810004',2,'2005-06-06','1','0','0');


-- 12.    将性别为“男”,且家庭地址为“江西九江”的会员的工资增加1000。
        update 会员
        set 工资=工资+1000
        where 性别='男' and 住址='江西九江';

  update 会员set 工资=工资+1000where 性别='男' and 住址='江西九江';


-- 13.    删除住址为“赣州”的会员记录。
        delete from 会员
        where 住址='赣州';

  delete from 会员where 住址='赣州';


-- 14.查询所有会员的会员编号,姓名,性别,住址,工资,并按住址升序排列,住址相同的按工资降序排列。
select  会员编号,姓名,性别,住址,工资
from  订单
order  by  住址,工资  desc;

select  会员编号,姓名,性别,住址,工资
from  订单
order  by  住址,工资  desc;

-- 15.查询女会员的会员编号,姓名,性别,住址
select  会员编号,姓名,性别,住址 
from 会员  
where  性别='女';

select  会员编号,姓名,性别,住址 
from 会员  
where  性别='女';


-- 16. 查询工资前5名的会员信息。
select  *  
from  会员 
order  by  工资  desc  
limit 0,5;

select  *  
from  会员 
order  by  工资  desc  
limit 0,5;

-- 17.查询每个城市(住址)的会员工资平均值,列名指定为为“各会员月薪平均值”。
select  会员编号,avg(工资)  as 各会员月薪平均值
from   会员
group  by  会员编号;

select  会员编号,avg(工资)  as 各会员月薪平均值
from   会员
group  by  会员编号;


-- 18.  查询每个城市(住址)的会员人数,要求输出会员数大于2的住址和人数。
select  住址,count(*)
from    会员
group  by  住址
having  count(*)>=2;

select  住址,count(*)
from    会员
group  by  住址
having  count(*)>=2;


-- 19. 查询产品名称为“清华同方电脑”的购买信息,包括会员编号、姓名、订单编号、产品名称
select  会员.会员编号,姓名,订单编号,产品名称
from    会员  inner  join  订单 on 会员.会员编号=订单.会员编号  
              inner  join   产品  on 订单.产品编号=产品.产品编号
WHERE   产品名称='清华同方电脑';

select  会员.会员编号,姓名,订单编号,产品名称
from    会员  inner  join  订单 on 会员.会员编号=订单.会员编号  inner  join   产品  on 订单.产品编号=产品.产品编号
WHERE   产品名称='清华同方电脑';


-- 20. 用命令方式备份eshop数据库到e盘根目录eshop.sql 文件(要包含建库语句)
mysqldump  -uroot  -p123456  --databases  eshop  >  e:\eshop.sql 

mysqldump  -uroot  -p123456  --databases  eshop  >  e:\eshop.sql 


 

这篇关于eshop(商城管理系统)MySQL源码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/284177

相关文章

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

浅谈mysql的not exists走不走索引

《浅谈mysql的notexists走不走索引》在MySQL中,​NOTEXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引,下面就来介绍一下mysql的notexists走不走索... 在mysql中,​NOT EXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引。以下

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字