当前位置:网站首页>The problem of returning the longtext field in MySQL and its solution
The problem of returning the longtext field in MySQL and its solution
2022-07-05 19:13:00 【1024 questions】
MySql in longtext Field return
As shown in the figure below
resolvent
Mysql in Text The range of the field
Chinese characters are in utf8mb4 Take up a few characters in
MySql in longtext Field returnIn recent development longtext This kind of field . stay mysql The maximum length of this field in is 4G
As shown in the figure belowOne of the problems encountered in development is . For example, there is a article surface , Then our page will show the data to the front end in the form of a list ( Only a few fields are displayed , As the author , Title and so on , For example, put table Multiple records are displayed in ), But it is to find out all the information in the table , Then when the user clicks on a record , Will jump to the details page , The detailed information is displayed .
In this way, when there is a large amount of data , Or when the content of the text is relatively large , There's a problem .
Open the page , The page will always load , More data , The longer the loading time , Then the data list will be displayed . This will seriously affect the use effect .
resolventCertainly sql Sentence problem , When querying the whole list like the above , Can not query longtext This field , Query other fields . Then when the user clicks on a piece of data , Then according to the data id Go to the database to check this data , At this time, we will longtext Just find out .
Speaking of this , There is also a situation , Sometimes the data found in the database is encapsulated into entity classes , You can never get the value of a field , Namely null. At this time, I want to see sql sentence , Whether the returned result set encapsulates and maps this field to the corresponding field of this class .
Generally, the reason why this field is not encapsulated in the result set .
Mysql in Text The range of the fieldtext: Store variable length non Unicode data , Maximum length is 2^31-1 Characters .
text Column cannot have default value , During storage or retrieval , There is no case conversion , If the length is specified , No mistakes will be reported , But this length doesn't work , That means when you insert data , If it exceeds the length you specified, it can be inserted normally .
mysql in text Maximum length is 65,535(2 Of 16 Power –1) Character TEXT Column .
If you think text Not long enough , You can choose
MEDIUMTEXT
Maximum length is 16,777,215.
LONGTEXT
Maximum length is 4,294,967,295
Text
It is mainly used to store non binary text , Such as forum posts , subject , Or Baidu knows the questions and answers .
What needs to be clear is text and char varchar blob The differences between these types .
mysql modify text Field length _mysql Of text Field length ?mysql In the database text Insufficient field length …
The type is a variable length string , most 65535 Characters ;
You can change the field type to MEDIUMTEXT( At most 16777215 Characters ) perhaps LONGTEXT( At most 4294967295 Characters ).
Chinese characters are in utf8mb4 Take up a few characters inMySQL supports 4 TEXT field types (TINYTEXT, TEXT, MEDIUMTEXT and LONGTEXT) and this post looks at the maximum length of each of these field types.
MyISAM tables in MySQL have a maximum size of a row of 65,535 bytes, so all the data in a row must fit within that limit. However, the TEXT types are stored outside the table itself and only contribute 9 to 12 bytes towards that limit. (For more information about this refer to the MySQL Manual - Data Storage Requirements chapter). TEXT data types are also able to store much more data than VARCHAR and CHAR text types so TEXT types are what you need to use when storing web page or similar content in a database. The maximum amount of data that can be stored in each data type is as follows: TINYTEXT256 bytes
TEXT65,535 bytes~64kb
MEDIUMTEXT 16,777,215 bytes~16MB
LONGTEXT4,294,967,295 bytes~4GB
In most circumstances the TEXT type is probably sufficient, but if you are coding a content management system it’s probably best to use the MEDIUMTEXT type for longer pages to ensure there are no issues with data size limits.
answer :3 individual
MySQL For utf8mb4 The explanation is
The existing database version defaults to utf8 All for utf8mb3, Pay attention to what it says " Same length ".
So in utf8mb4 Next , English occupation 1 Bytes , General Chinese characters account for 3 Bytes ,emoji Account for expression 4 Bytes .
About code insertion emoji Expression error , Please check Table code and Database connection Whether the code is utf8mb4.
Conclusion : Both database and table are set to utf8mb4.
The above is personal experience , I hope I can give you a reference , I also hope you can support the software development network .
边栏推荐
- C# 语言的高级应用
- Hiengine: comparable to the local cloud native memory database engine
- Technology sharing | interface testing value and system
- Mysql如何对json数据进行查询及修改
- The monthly list of Tencent cloud developer community videos was released in May 2022
- Go语言学习教程(十六)
- R language uses lubridate package to process date and time data
- PG基础篇--逻辑结构管理(用户及权限管理)
- Word finds red text word finds color font word finds highlighted formatted text
- Advanced application of C # language
猜你喜欢
随机推荐
Fuzor 2020 software installation package download and installation tutorial
MySQL数据库索引教程(超详细)
华律网牵手观测云,上线系统全链路可观测平台
Go语言学习教程(十六)
企业级数据安全,天翼云是这样理解的
[today in history] July 5: the mother of Google was born; Two Turing Award pioneers born on the same day
Debezium系列之:IDEA集成词法和语法分析ANTLR,查看debezium支持的ddl、dml等语句
Debezium系列之:修改源码支持unix_timestamp() as DEFAULT value
尚硅谷尚优选项目教程发布
JAD installation, configuration and integration idea
XML basic knowledge concept
泰山OFFICE技术讲座:由行的布局高度,谈绘制高度的高度溢出、高度缩水(全网首发)
Benefits of automated testing
Android面试,android音视频开发
Startup and shutdown of CDB instances
MySQL中字段类型为longtext的值导出后显示二进制串方式
Low code practice of xtransfer, a cross-border payment platform: how to integrate with other medium-sized platforms is the core
UDF implementation of Dameng database
uniapp获取微信头像和昵称
基于FPGA的超声波测距