微信點餐系統(一)建表的一些注意事項

2021-09-08 11:42:07 字數 3876 閱讀 9733

sql語句:

create table `product_info`(

`product_id` varchar(32) not null,

`product_name` varchar(64) not null comment '商品名稱',

`product_price` decimal(8,2) not null comment '商品單價',

`product_stock` int not null comment '庫存',

`product_description` varchar(64) comment '描述',

`product_icon` varchar(512) comment '小圖',

`category_type` int not null comment '類目編號',

`create_time` timestamp not null default current_timestamp comment '建立時間',

`update_time` timestamp not null default current_timestamp on update current_timestamp comment '修改時間',

primary key(`product_id`)

) comment '商品表';

tips:

default current_timestamp
default current_timestamp on update current_timestamp
只有mysql5.7以上版本才支援default current_timestamp的寫法

sql語句:

create table `product_category`(

`category_id` int not null auto_increment,

`category_name` varchar(64) not null comment '類目名稱',

`category_type` int not null comment '類目編號',

`create_time` timestamp not null default current_timestamp comment '建立時間',

`update_time` timestamp not null default current_timestamp on update current_timestamp comment '修改時間',

primary key (`category_id`),

unique key `uqe_category_type` (`category_type`)

) comment '類目表';

tips:

1.在商品中id過多一般不用int自增,但是在類目中,不會出現過多的id,可以使用int自增

2.在商品表中,會利用類目編號category_type到類目表中與表中相應字段對應查詢資料,為提公升效能可以給該字段加約束索引。

unique key `uqe_category_type` (`category_type`)
sql語句:

create table `order_master`(

`order_id` varchar(32) not null,

`buyer_name` varchar(32) not null comment '買家名字',

`buyer_phone` varchar(32) not null comment '買家**',

`buyer_address` varchar(128) not null comment '買家位址',

`order_amount` decimal(8,2) not null comment '訂單總金額',

`order_status` tinyint(3) not null default '0' comment '訂單狀態,預設0新下單',

`pay_status` tinyint(3) not null default '0' comment '支付狀態,預設0未支付',

`create_time` timestamp not null default current_timestamp comment '建立時間',

`update_time` timestamp not null default current_timestamp on update current_timestamp comment '修改時間',

primary key (`order_id`),

key `idx_buyer_openid` (`buyer_openid`)

) comment '訂單主表';

tips:

1、訂單狀態 order_status 狀態值使用tinyint即可。

2、訂單可能經常使用使用者openid查詢,所以給openid加索引。

key `idx_buyer_openid` (`buyer_openid`)
3.關於關鍵字tinyint的一些說明:

tinyint可以儲存1位元組, 即unsigned 0~255(signed -127~127)。顯示大小不受此限制 (所有整數型別相同),即使設為1,也可以存入和取出大於10的數。括號裡的數字,即顯示大小對整數來說主要有兩個目的, 一是做為編碼文件;將 tinyint (1) 放到表定義中會告訴人們只有數字 0 - 9 應該輸入, 表沒有被設計具有其他值。

另乙個目的是, 你可以與屬性zerofill聯合使用。zerofill將填充小於顯示大小的數字,在他們面前補上零。例如 tinyint (3) 與 zerofill, 插入值4, 你會得到004

sql語句:

create table `order_detail`(

`detail_id` varchar(32) not null,

`order_id` varchar(32) not null,

`product_id` varchar(32) not null,

`product_name` varchar(64) not null comment '商品名稱',

`product_price` decimal(8,2) not null comment '商品**',

`product_quantity` int not null comment '商品數量',

`product_icon` varchar(512) comment '商品',

`create_time` timestamp not null default current_timestamp comment '建立時間',

`update_time` timestamp not null default current_timestamp on update current_timestamp comment '修改時間',

primary key (`detail_id`),

key `idx_order_id` (`order_id`)

) comment '訂單詳情表';

tips:

1、查詢訂單詳情會用到訂單id,所以給訂單id加索引

key `idx_order_id` (`order_id`)
建庫:

新建資料庫,編碼選擇utf8mb4 - utf8mb4_general_ci

該編碼可以儲存emoji表情。

裝系統一些事

分割槽和啟動 win7及以下 建議使用mbr分割槽,建立主分割槽和邏輯分割槽,使用legacy bios引導 win10 建議使用guid分割槽,建立gpt分割槽,建立esp和msr分割槽,使用uefi啟動 1.一些主機板的uefi,不能在mbr的分割槽被識別啟動 2.uefi正在取代bios啟動,...

電商系統 一些業務點

一會兒又提現,一會兒又補單,轉過去轉過來的,很容易錯 關聯到人,細粒度記錄 使用者的購買頻率統計,也可以反映在產品上 一些很惡意的客戶就把他放在上面,供賣家查詢 店鋪關聯的支付寶別人也在用,這個時候就需要計算出店鋪的應收款項 乙個處理客戶惡意差評 惡意投訴的模組 定期對這類使用者進行處理,比如十天半...

windows mysql 安裝的一些注意事項

以管理員身份執行,在命令列輸入cd mysql的bin目錄的安裝路徑 c windows system32 cd c program files mysql mysql server5.6 bin c program files mysql mysql server5.6 bin mysqld re...