第十四次作业

  • 安装并配置MySQL
  1. 打开控制台
  2. 登录MySQL

 

  • 数据库、表的基本操作
  • 创建电子商城数据库“mall_姓名全拼

 使用电子商城数据库

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

字段名

数据类型

长度

主、外键

其他约束

备注信息

phone

char

11

主键

注册手机号

username

varchar

20

非空,唯一

用户名

password

varchar

20

非空

密码

question

text

非空

找回密码问题

answer

text

非空

找回密码问题答案

 

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

字段名

数据类型

长度

主、外键

其他约束

备注信息

id

char

16

主键

卖家ID(S_DATE_XXXXX)

phone

char

11

外键(user.phone)

非空,唯一

注册手机号

open_date

date

非空

开业时间

name

varchar

50

非空

店铺名称

nickname

varchar

30

非空

掌柜昵称

 

  1. 创建买家信息表“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

 

  1. 创建地址表“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

是否默认地址

 

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

字段名

数据类型

长度

主、外键

其他约束

备注信息

code

char

6

主键

产品种类编码(TXXXXX)

name

varchar

30

非空

产品种类名称

 

  1. 创建产品表“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

库存数量

 

 

  1. 创建订单表“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

实付款

 

 

  1. 创建订单详情表“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. 所有字段批量插入用户表数据

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

 

  1. 所有字段批量插入卖家信息表数据

id

phone

open_date

name

nickname

S_20200703_00001

13812345678

2020-07-03

ledin

ledin

S_20201030_00001

18212345678

2020-10-30

hla

hla

 

  1. 指定字段批量插入买家信息表数据

id

phone

nickname

height

weight

B_20200422_00001

13212345678

funny shop

168

52

B_20200911_00001

13112345678

cool girl

165

47

 

  1. 指定字段批量插入地址表数据

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

 

  1. 所有字段批量插入产品种类表数据

code

name

T00001

coat

T00002

shirt

T00003

shorts

T00004

pants

T00005

jeans

T00006

polo

 

  1. 指定字段插入产品表数据

id

seller_id

type_id

name

picture

unit_price

P_20190102_00001

S_20200703_00001

T00003

blue shorts

p123.jpg

168.8

 

  1. 所有字段插入产品表数据

id

seller_id

type_id

name

picture

unit_price

quantity

P_20190102_00002

S_20200703_00001

T00001

coat

coat1.jpg

62.2

43

 

  1. 指定字段插入产品表数据

id

seller_id

type_id

name

unit_price

P_20190203_00001

S_20201030_00001

T00006

black polo

239.9

 

  1. 所有字段插入产品表数据

id

seller_id

type_id

name

picture

unit_price

quantity

P_20190203_00002

S_20201030_00001

T00005

jeans

12.jpg

198.8

23

 

  1. 查看产品表所有字段数据

 

  1. 订单表指定字段插入数据

id

seller_id

buyer_id

address_id

O_20201102_00001

S_20200703_00001

B_20200422_00001

A_20201103_00004

 

  1. 订单详情表指定字段插入数据

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

 

 

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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个 C 语言的示例代码,可以实现你所描述的功能: ```c #include <stdio.h> #include <string.h> #include <stdlib.h> #define MAX_STUDENT_NUM 50 // 最大学生数 struct student { int num; // 学号 char name[20]; // 姓名 int age; // 年龄 }; // 按学号从小到大排序 int cmp_by_num(const void* a, const void* b) { return ((struct student*)a)->num - ((struct student*)b)->num; } // 按姓名从小到大排序 int cmp_by_name(const void* a, const void* b) { return strcmp(((struct student*)a)->name, ((struct student*)b)->name); } // 按年龄从小到大排序 int cmp_by_age(const void* a, const void* b) { if (((struct student*)a)->age != ((struct student*)b)->age) { return ((struct student*)a)->age - ((struct student*)b)->age; } else { return strcmp(((struct student*)a)->name, ((struct student*)b)->name); } } int main() { int n; scanf("%d", &n); struct student stu[MAX_STUDENT_NUM]; // 输入学生信息 for (int i = 0; i < n; i++) { scanf("%d%s%d", &stu[i].num, stu[i].name, &stu[i].age); } // 按学号从小到大排序 qsort(stu, n, sizeof(struct student), cmp_by_num); // 按姓名从小到大排序输出 qsort(stu, n, sizeof(struct student), cmp_by_name); for (int i = 0; i < n; i++) { printf("%3d %-6s %3d\n", stu[i].num, stu[i].name, stu[i].age); } printf("\n"); // 按年龄从小到大排序输出 qsort(stu, n, sizeof(struct student), cmp_by_age); for (int i = 0; i < n; i++) { printf("%3d %-6s %3d\n", stu[i].num, stu[i].name, stu[i].age); } printf("\n"); return 0; } ``` 该代码定义了一个 `struct student` 结构体,包括学号、姓名和年龄。在主函数中,首先输入学生数 `n`,然后定义一个长度为 `MAX_STUDENT_NUM` 的学生数组,并通过循环输入每个学生的信息。接着,分别定义了三个比较函数 `cmp_by_num`、`cmp_by_name` 和 `cmp_by_age`,用于排序。最后,分别按姓名和年龄从小到大排序输出学生信息。其中,姓名和年龄相同时,按姓名从小到大排序输出。两种排序方式输出结果之间用一行空行相隔。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值