网站建设需要花多少钱,如何通过网站开发客户,工业软件开发平台,做网站优化公司文章目录 一、字段1.1 添加字段1.2 给列添加默认值1.3 修改列的属性1.4 更新1.5 删除1.6 同时修改多列 二、索引2.1 普通索引2.2 唯一键 三、创建表四、字段json不是json类型#xff0c;但是也可以按照json存储内容补充 default 0 和 default 0没区别 一、字段
1.1 添加字段 … 文章目录 一、字段1.1 添加字段1.2 给列添加默认值1.3 修改列的属性1.4 更新1.5 删除1.6 同时修改多列 二、索引2.1 普通索引2.2 唯一键 三、创建表四、字段json不是json类型但是也可以按照json存储内容补充 default 0 和 default 0没区别 一、字段
1.1 添加字段
ALTER TABLE user ADD gmv decimal(20,6) NOT NULL DEFAULT 0.000000 COMMENT 销售金额 after count;1.2 给列添加默认值
ALTER TABLE user ALTER COLUMN name SET DEFAULT ;1.3 修改列的属性
alter table user modify column name varchar(510) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT COMMENT 名称;1.4 更新
update user set age 1 , money 50.0 where id 1;1.5 删除
ALTER TABLE user DROP COLUMN name;1.6 同时修改多列
alter table user modify column age int(11) NOT NULL COMMENT 年龄,
modify column iphone bigint(20) NOT NULL DEFAULT 0 COMMENT 手机号,
add extra json DEFAULT NULL COMMENT 额外字段;二、索引
2.1 普通索引
ALTER TABLE user ADD index idx_name (name) COMMENT 名称索引;2.2 唯一键
创建
alter table user add unique index uniq_name_age (name,age) COMMENT xxx唯一键; 删除
ALTER TABLE user DROP INDEX uniq_name_age;三、创建表
CREATE TABLE sku_detail (
id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,
sku_id int NOT NULL COMMENT SKUID,
sku_temperature_zone tinyint(4) DEFAULT 0 COMMENT Sku温层0未知,1冷冻,2冷藏,5常温,7高温,
sku_name varchar(128) NOT NULL DEFAULT COMMENT SKUNAME,
ctime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,
utime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间,
create_by varchar(64) NOT NULL COMMENT 创建人,
change_by varchar(64) NOT NULL DEFAULT COMMENT 更新人,默认值为空字符串,
valid tinyint(1) NOT NULL DEFAULT 1 COMMENT 是否有效,0:无效,1:有效,
PRIMARY KEY (id),
KEY sku_id (sku_id)
) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_unicode_ci COMMENTsku_detail表;四、字段json
DB
alter table user add extra json DEFAULT NULL COMMENT json字符串;对应DO或PO属性 private String extra; 集合转为json字符串 userDO.setExtra(GsonUtils.toJsonString(Long类型的集合));其中GsonUtils参考GsonUtils内容 json字符串转为List集合
ListLong extraList GsonUtils.fromJson(jsonStr, new TypeTokenListLong() {}.getType());不是json类型但是也可以按照json存储内容
后端数据DO存入db
private MapLong, MapString, Long map 你后端的内容;
String json GsonUtil.toJson(map);
userDO.setExtra(json);从db中取数据将json数据转为List
MapString,Long json2Map changeJsonString2Map(userDO.getExtra());private MapString, Long changeJsonString2Map(String str) {if (StringUtils.isBlank(str)){return Collections.emptyMap();}return new Gson().fromJson(str,new TypeTokenHashMapString,Long(){}.getType());}补充 default 0 和 default 0’没区别