创建商品品牌分类表

2020-02-20  本文已影响0人  Ancestor楠

-- 创建商品品牌分类表

create table if not exists goods_brands(

    id int unsigned primary key auto_increment,

    name varchar(40) not null

);

-- 查询goods表中商品品牌的种类

select brand_name from goods group by brand_name;

-- 将分组结果写入到goods_brands数据表

insert into goods_brands (name) select brand_name from goods group by brand_name; -- select前面不能加values

-- 通过goods_brands数据表来更新goods表

update goods as g inner join goods_brands as b

on g.brand_name=b.name set g.brand_name=b.id;

-- 通过alter table语句修改表结构(即改名字又改类型) change:重命名

alter table goods change brand_name brand_id int unsigned not null;

-- 类别的名称brand_name重命名为brand_id

-- 关联外键

如何防止无效信息的插入,就是可以在插入前判断类型或者品牌名称是否存在呢? 外键可以解决

外键约束:对数据的有效性进行验证

关键字: foreign key,只有 innodb数据库引擎 支持外键约束

alter table goods add foreign key (brand_id) references goods_brands(id);

-- 取消外键

alter table goods drop foreign key goods_ibfk_2;

上一篇下一篇

猜你喜欢

热点阅读