草庐IT

数据库第十四次作业 电子商城项目

夏志121 2023-03-28 原文

目录

​任务一:安装配置SQL​

​任务二:数据库、表的基本操作​

​任务三:对表中的数据进行基本操作​

​任务四:使用事务操作表中数据​

​任务五:创建并使用视图​

​任务六:备份数据库​


任务一:安装配置SQL

1、打开控制台

2、登录MySQL

任务二:数据库、表的基本操作

1、创建电子商城数据库“mall_姓名全拼”

2、使用电子商城数据库

3、创建用户表“user_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

phone

char

11

主键


注册手机号

username

varchar

20


非空,唯一

用户名

password

varchar

20


非空

密码

question

text



非空

找回密码问题

answer

text



非空

找回密码问题答案

 4、创建卖家信息表“seller_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键


卖家ID(S_DATE_XXXXX)

phone

char

11

外键(user.phone)

非空,唯一

注册手机号

open_date

date



非空

开业时间

name

varchar

50


非空

店铺名称

nickname

varchar

30


非空

掌柜昵称

 5、创建买家信息表“buyer_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键


买家ID(B_DATE_XXXXX)

phone

char

11

外键(user.phone)

非空,唯一

注册手机号

nickname

varchar

30


非空

买家昵称

gender

enum(“miss”,”mr”)



默认miss

性别

height

int

3



身高cm

weight

double




体重kg

 6、创建地址表“address_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键


地址ID (A_DATE_XXXXX)

buyer_id

char

16

外键(buyer.id)

非空

买家ID

contact_phone

char

11


非空

收货人联系方式

detail_address

text



非空

详细地址

is_default

enum(“yes”,”no”)



默认 no

是否默认地址

 7、创建产品种类表“product_type_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

code

char

6

主键


产品种类编码(TXXXXX)

name

varchar

30


非空

产品种类名称

 8、创建产品表“product_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键


产品编号(P_DATE_XXXXX)

seller_id

char

16

外键(seller.id)

非空

卖家ID

type_id

char

6

外键(product_type.code)

非空

产品种类编码

name

varchar

100


非空

产品名称

picture

text




产品展示图

unit_price

double



非空

单价

quantity

int

10


默认 100

库存数量

 9、创建订单表“order_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键


订单编号(O_DATE_XXXXX)

seller_id

char

16

外键(seller.id)

非空

卖家ID

buyer_id

char

16

外键(buyer.id)

非空

买家ID

address_id

char

16

外键(address.id)

非空

地址ID

total_price

double



默认0

总价

actrual_payment

double



默认0

实付款

 10、创建订单详情表“order_detail_姓名全拼”,表中字段信息如下

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

int

10

主键

自增


order_id

char

16

外键(order.id)

非空

订单编号

product_id

char

16

外键(product.id)

非空

产品编号

purchase_quantity

int

3


默认1

采购数量

discount_unit_price

double



非空

产品折后价

 任务三:对表中的数据进行基本操作

1、user_liuzeshen表所有字段批量插入用户表数据

phone

username

password

question

answer

13812345678

anne

annnepassword

favorite book

harry potter

18212345678

frank

Frankpassword

Favorite song

lonely

13212345678

alan

Alanpassword

First love

carry

13112345678

peter

Peterpassword

Who is your father

jack

2、 seller_liuzeshen表所有字段批量插入卖家信息表数据

id

phone

open_date

name

nickname

S_20200703_00001

13812345678

2020-07-03

ledin

ledin

S_20201030_00001

18212345678

2020-10-30

hla

hla

 3、buyer_liuzeshen表指定字段批量插入买家信息表数据

id

phone

nickname

height

weight

B_20200422_00001

13212345678

funny shop

168

52

B_20200911_00001

13112345678

cool girl

165

47

 4、address_liuzeshen表指定字段批量插入地址表数据

id

buyer_id

contact_phone

detail_address

A_20201103_00004

B_20200422_00001

13212345678

gray street

A_20201103_00005

B_20200422_00001

13212345678

funny street

A_20201103_00006

B_20200422_00001

13212345678

frank street

A_20201103_00007

B_20200911_00001

13112345678

rock street

 5、product_type_liuzeshen表所有字段批量插入产品种类表数据

code

name

T00001

coat

T00002

shirt

T00003

shorts

T00004

pants

T00005

jeans

T00006

polo

 6、product_liuzeshen表指定字段插入产品表数据

id

seller_id

type_id

name

picture

unit_price

P_20190102_00001

S_20200703_00001

T00003

blue shorts

p123.jpg

168.8

 7、product_liuzeshen所有字段插入产品表数据

id

seller_id

type_id

name

unit_price

P_20190203_00001

S_20201030_00001

T00006

black polo

239.9

 8、product_liuzeshen表指定字段插入产品表数据

id

seller_id

type_id

name

unit_price

P_20190203_00001

S_20201030_00001

T00006

black polo

239.9

 9、product_liuzeshen表所有字段插入产品表数据

id

seller_id

type_id

name

picture

unit_price

quantity

P_20190203_00002

S_20201030_00001

T00005

jeans

12.jpg

198.8

23

 10、查看产品表所有字段数据

 11、order_liuzeshen表订单表指定字段插入数据

id

seller_id

buyer_id

address_id

O_20201102_00001

S_20200703_00001

B_20200422_00001

A_20201103_00004

12、order_detail_liuzeshen表订单详情表指定字段插入数据

order_id

product_id

purchase_quantity

discount_unit_price

O_20201102_00001

P_20190102_00001

1

150

O_20201102_00001

P_20190102_00002

2

40

13、修改订单详情表中O_20201102_00001订单P_20190102_00002产品的采购数量为1

14、查看O_20201102_00001订单的订单编号、产品编号、库存数量、采购数量、采购后数量(库存数量-采购数量)、产品单价、折后单价

15、修改产品表中库存数量为采购后数量

16、根据订单号分组查看订单号、订单总价(sum(采购数量*产品单价))、实付款(sum(采购数量*折扣单价))

17、根据上述代码计算出的值修改订单表中O_20201102_00001订单的总价、实付款数据

18、查看O_20201102_00001订单的订单编号、店铺名称、买家昵称、详细地址、产品名称、采购数量、折后价格

任务四:使用事务操作表中数据

1、开启事务

2、订单表指定字段插入数据

id

seller_id

buyer_id

address_id

O_20201102_00002

S_20201030_00001

B_20200911_00001

A_20201103_00007

 3、订单详情表指定字段插入数据

order_id

product_id

purchase_quantity

discount_unit_price

O_20201102_00002

P_20190203_00001

1

230

O_20201102_00002

P_20190203_00002

2

190

 4、查看O_20201102_00002订单的订单编号、产品编号、库存数量、采购数量、采购后数量(库存数量-采购数量)、产品单价、折后单价

 5、修改产品表中库存数量为采购后数量

 6、根据订单号分组查看订单总价(sum(采购数量*产品单价))、实付款(sum(采购数量*折扣单价))

7、 根据上述代码计算出的值修改订单表中O_20201102_00002订单的总价、实付款数据

 8、查看订单表所有字段数据

 9、查看订单详情表所有字段数据

 10、提交事务

 11、开启事务

12、修改订单详情表中O_20201102_00002订单P_20190203_00002产品的折后单价为180

 13、修改订单详情表中O_20201102_00002订单P_20190203_00001产品的折后单价为200

 14、根据订单号分组查看实付款(sum(采购数量*折扣单价))

 15、根据上述代码计算出的值修改订单表中O_20201102_00002订单的实付款数据

 16、查看订单详情表所有字段数据

 17、回滚事务

 18、查看O_20201102_00002订单的订单编号、店铺名称、买家昵称、详细地址、产品名称、采购数量、折后价格

任务五:创建并使用视图

1、查看买家昵称、性别、联系方式、详细地址、是否默认地址

 2、创建买家信息视图“view_buyer_info_姓名全拼”查看上述内容

 3、查看买家信息视图买家昵称含有“h”的数据

 4、查看产品种类编码、产品种类名称、产品名称、单价、库存

 5、创建产品信息视图“view_product_ info_姓名全拼”查看上述内容

 6、查看订单详情表中的所有产品名称

 7、查看产品信息视图中已经有过订单销售记录的产品数据(子查询 in)

 8、查看订单编号、店铺名称、买家昵称、详细地址、产品名称、采购数量、折后价格

 9、创建订单信息视图“view_order_ info_姓名全拼”查看上述内容

 10、查看订单信息视图中采购数量不为1的数据

任务六:备份数据库

 1、备份所有数据库,文件名为“all_姓名全拼.sql”(截两张图 命令+文件)

2、备份电子商城数据库,文件名为“mall_姓名全拼.sql”(截两张图 命令+文件)

3、删除电子商城数据库

4、创建电子商城数据库“mall_姓名全拼”

5、退出MySQL登录

6、执行电子商城数据库备份文件

7、登录MySQL

8、使用电子商城数据库

9、查看所有表

有关数据库第十四次作业 电子商城项目的更多相关文章

  1. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  2. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  3. ruby-on-rails - 项目升级后 Pow 不会更改 ruby​​ 版本 - 2

    我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby​​版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby​​版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘

  4. ruby-on-rails - 新 Rails 项目 : 'bundle install' can't install rails in gemfile - 2

    我已经像这样安装了一个新的Rails项目:$railsnewsite它执行并到达:bundleinstall但是当它似乎尝试安装依赖项时我得到了这个错误Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcheckingforlibkern/OSAtomic.h...yescreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="

  5. ruby - Ruby 有 `Pair` 数据类型吗? - 2

    有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳

  6. Ruby 从大范围中获取第 n 个项目 - 2

    假设我有这个范围:("aaaaa".."zzzzz")如何在不事先/每次生成整个项目的情况下从范围中获取第N个项目? 最佳答案 一种快速简便的方法:("aaaaa".."zzzzz").first(42).last#==>"aaabp"如果出于某种原因你不得不一遍又一遍地这样做,或者如果你需要避免为前N个元素构建中间数组,你可以这样写:moduleEnumerabledefskip(n)returnto_enum:skip,nunlessblock_given?each_with_indexdo|item,index|yieldit

  7. ruby - 我如何添加二进制数据来遏制 POST - 2

    我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_

  8. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  9. FOHEART H1数据手套驱动Optitrack光学动捕双手运动(Unity3D) - 2

    本教程将在Unity3D中混合Optitrack与数据手套的数据流,在人体运动的基础上,添加双手手指部分的运动。双手手背的角度仍由Optitrack提供,数据手套提供双手手指的角度。 01  客户端软件分别安装MotiveBody与MotionVenus并校准人体与数据手套。MotiveBodyMotionVenus数据手套使用、校准流程参照:https://gitee.com/foheart_1/foheart-h1-data-summary.git02  数据转发打开MotiveBody软件的Streaming,开始向Unity3D广播数据;MotionVenus中设置->选项选择Unit

  10. 使用canal同步MySQL数据到ES - 2

    文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co

随机推荐