有一个商店的数据,记录客户及购物情况,有以下三个表组成:
1)商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供应商provider)
2)客户customer(客户号customer_id,姓名name,住址address,邮箱email,性别sex,身份证card_id)
3)购买purchase(购买订单号order_id,客户号customer_id,商品号goods_id,购买数量nums)
我们在使用命令行来编写SQL的时候,这里有一个让人头大的问题,就是,如果换行了,就不能移动光标到上一行了,假如上一行发现写错了,那只能使用Ctrl+C来停止,重新来写过了,这就很蛋疼
使用我们在写SQL的时候,最好往其他编译器上,比如说在VScode写代码,或者在文本文件里面写SQL,然后写好后再复制到命令行框中,这样就避免了蛋疼
那么现在就来创建一个shop数据库,然后往shop里面添加3张表~~~
create database shop;
use shop;
create table goods(
goodsId int,
goodsName varchar(20),
unitPrice int comment '单价 ,单位:分'
category varchar(20),
provider varchar(60)
);
create table customer(
customerId int,
name varchar(20),
address varchar(40),
emial varchar(65),
gender varchar(2),
cardId varchar(18)
);
create table purchase(
orderId int,
customerId int,
goodsId int,
nums int
);
编程创建的命名规则
(1)驼峰:goodsId(常用)
(2)蛇形:goods_id
(3)脊柱:goods-id(不建议用,-在大部分编译器中被明确指定为减号或者负号)
(4)匈牙利:iGoodsId,sGoodsName (把变量的类型,作为名字前缀)
我们经常计算钱,钱这个东西要非常的精确,用float或者double这两个不合适,不精确
用decimal来表示的话,效率又很低,空间占用率还高
那么用啥可以两全其美,又精确又快呢??
用int来表示,因为钱在现实中最多精确到1分钱
100分 = 1块钱
使用用int来表示钱,单位是分
~~~