赞
踩
目录
1、MySQL单字段存储大容量内容,数据过多存储错误的解决办法
MySQL单字段存储大容量内容
Data too long for column 'abc' at row 1
解决办法:
将字段类型修改成更大的类型
字段类型 | 类型长度 | 空间大小 |
---|---|---|
TINYTEXT | 256 bytes | |
TEXT | 65,535 bytes | ~64kb |
MEDIUMTEXT | 16,777,215 bytes | ~16MB |
LONGTEXT | 4,294,967,295 bytes | ~4GB |
例:
代码中
- @Column(name = "ABC",columnDefinition="MEDIUMTEXT")
- private String abc;
数据库DB中直接--设计表-->修改类型就ok了
=========
columnDefinition属性表示创建表时,该字段创建的SQL语句。
需要特殊指定字段类型的情况如上。
GROUP BY 分组分割,有多个的情况,想显示这多个情况,使用GROUP_CONCAT进行显示。
GROUP_CONCAT显示的长度默认1024;如果超过就会发生截取
此时需要在数据库中做设置
- //临时修改,重启数据库就失效了
- SET GLOBAL group_concat_max_len=102400;
- SET SESSION group_concat_max_len=102400;
- //查看mysql的group_concat_max_len
- show variables like 'group_concat_max_len';
-
- //永久修改
- 修改配置文件my.ini
- 在[mysqlId]下面添加
- group_concat_max_len=4294967295
- 重启mysql后去检查
- show variables like 'group_concat_max_len';
- SUBSTR(str,pos,len)
-
- --pos可以为负数,起始值从1开始,不是0;
- select SUBSTR(name, 1, 5) from student;
- SELECT UPPER(expression) FROM tab;
- SELECT Lower(Expression) FROM tab;
- limit子句用于限制查询结果返回的数量,常用于分页查询
-
- select * from tableName limit i,n
- # tableName:表名
- # i:为查询结果的索引值(默认从0开始),当i=0时可省略i
- # n:为查询结果返回的数量
- # i与n之间使用英文逗号","隔开
- #
- limit n 等同于 limit 0,n
-
- # 查询8条数据,索引从5到12,第6条记录到第13条记录
- select * from tableName limit 5,8;
- --修改表中某个字段中的内容
- 把'你好'修改为'你好!'
- update t_user set content=REPLACE(content,'你好','你好!') where content like'%你好%';
- SELECT
- table_name,
- table_comment,
- create_time,
- update_time
- FROM
- information_schema. TABLES
- WHERE
- table_schema = (SELECT DATABASE())
- AND table_name NOT LIKE 'qrtz_%'
- AND table_name NOT LIKE 'gen_%'
- AND table_name NOT IN (
- SELECT
- table_name
- FROM
- gen_table
- );
-
- #SELECT DATABASE()
Mysql关联表设计:考虑追加外键。
- drop table if exists t_sub;
- drop table if exists t_a;
- create table t_a (
- id bigint(20) not null auto_increment comment 'id',
- name varchar(30) default '' comment '名称',
- create_by varchar(64) default '' comment '创建者',
- create_time datetime comment '创建时间',
- update_by varchar(64) default '' comment '更新者',
- update_time datetime comment '更新时间',
- primary key (id)
- ) comment = 't_a表';
-
-
- create table t_sub (
- id bigint(20) not null auto_increment comment 'id',
- a_id bigint(20) not null comment 'a_id',
- name varchar(30) default '' comment '名称',
- create_by varchar(64) default '' comment '创建者',
- create_time datetime comment '创建时间',
- update_by varchar(64) default '' comment '更新者',
- update_time datetime comment '更新时间',
- primary key (id),
- CONSTRAINT `t_a_id` FOREIGN KEY (`a_id`) REFERENCES `t_a` (`id`) on DELETE CASCADE ON UPDATE CASCADE
- ) comment = 't_sub表';
-
-
- insert into t_a(name,create_by,create_time,update_by,update_time) values('名1','admin', sysdate(), '', null);
- SELECT @aId :=LAST_INSERT_ID();
- insert into t_sub(name,a_id,create_by,create_time,update_by,update_time) values('名2',@aId,'admin', sysdate(), '', null);
- insert into t_a(name,create_by,create_time,update_by,update_time) values('名3','admin', sysdate(), '', null);
- SELECT @aId :=LAST_INSERT_ID();
- insert into t_sub(name,a_id,create_by,create_time,update_by,update_time) values('名4',@aId,'admin', sysdate(), '', null);
不断学习才能不断提高!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。