首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL 大对象(BLOB)和字符串的分身术

MySQL 字段类型很多,我从 phpMyAdmin 5.1.1(一种开源的 MySQL 可视化工具)里找到了配置的所有 MySQL 字段类型,一共有 41 种。...MySQL 有一些字段类型是用同一个 C++ 类或通过继承同一个 C++ 类的方式实现的。...截止目前为止,我的十几篇公众号文章,有多篇文章里写到了 MySQL 对于大对象(BLOB)、定长字符串、变长字符串的特殊处理逻辑。...每次写到这些特殊处理逻辑,都需要说明哪些字段类型属于大对象、定长 & 变长字符串。 今天我们就来详细说说大对象、定长 & 变长字符串对应着 MySQL 中的哪些字段类型?...Field_blob、Field_json、Field_geom 承载了 17 个字段类型的实现,那 MySQL 怎么区分这 3 个类实例化之后,到底对应着哪种类型的字段呢?

1.2K40
您找到你想要的搜索结果了吗?
是的
没有找到

MySQLblob 和 text 数据类型详解

1. blob 类型 blob(binary large object) 是一个可以存储二进制文件的容器,主要用于存储二进制大对象,例如可以存储图片,音视频等文件。...按照可存储容量大小不同来分类,blob 类型可分为以下四种: 类型 可存储大小 用途 TINYBLOB 0 - 255字节 短文本二进制字符串 BLOB 0 - 65KB 二进制字符串 MEDIUMBLOB...2. text 类型 text 类型同 char、varchar 类似,都可用于存储字符串,一般情况下,遇到存储长文本字符串的需求时可以考虑使用 text 类型。...按照可存储大小区分,text 类型同样可分为以下四种: 类型 可存储大小 用途 TINYTEXT 0 - 255字节 一般文本字符串 TEXT 0 - 65 535字节 长文本字符串 MEDIUMTEXT...without a key length mysql> alter table tb_text add index idx_b (b); ERROR 1170 (42000): BLOB/TEXT

7K30

mysql面试题33:Blob和text有什么区别

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:Blob和text有什么区别 Blob和text是数据库中存储大文本数据的两种数据类型...存储方式:Blob(Binary Large Object)存储二进制数据,而text存储字符数据。 字符集:Blob中存储的是二进制数据,没有字符集的概念。...存储容量:Blob可以存储非常大的二进制数据,可以达到几个GB甚至更大。text可以存储较大的字符数据,但通常限制在几十KB到几MB之间。...而对于Blob类型的数据,通常不能建立索引,搜索效率较低。 存储方式:Blob数据通常以二进制文件的形式存储在数据库中,例如图片、视频等。...应用场景:Blob适用于存储二进制文件,例如图片、音频、视频等。text适用于存储文本内容,例如文章、博客、评论等。 关键点:Blob适用于存储二进制数据,text适用于存储字符数据。

3500

MySQL马详解

文章首发于奇安信攻防社区 https://forum.butian.net/share/362 一.日志马 1.1条件 1.全局变量general_log为ON MySQL的两个全局变量: general_log...set global general_log='on'; 打开过后,日志文件中就会记录我们的sql语句。...) 3.对web目录有权限MS的系统就不说了,一般都会有权限的,但是linux的系统,通常都是rwxr-xr-x,也就是说组跟其他用户都没有权限操作。...>;都可以了,因为sql语句不管对错日志都会记录 1.3过程 这里展示下堆叠注入的日志马过程,用的是sqli-labs的靶场: 实战中堆叠注入来日志马就不能用show来看全局变量的值了,所以就直接用...) 2.对web目录有权限MS的系统就不说了,一般都会有权限的,但是linux的系统,通常都是rwxr-xr-x,也就是说组跟其他用户都没有权限操作。

99810

mysql字符串转数字_mysql字符串转数字小计

问题:要求比较’100%’和’95%’的大小 实践:mysql> SELECT ‘100%’ > ‘95%’; +—————-+ | ‘100%’ > ‘95%’ | +—————-+ | 0 | +—...————-+ 1 row in set (0.00 sec) 发现’100%’竟然小于’95%’ 原因:因为是字符串字符串比较是递归字符串里面的每个字符进行比较,先去第一个,1和9比较大小,则1比9小...,输出结果;如果相等,则继续进行下一个字符比较 如果想要对这种类型的字符串进行大小比较,该怎么做呢?...DATETIME 浮点数 : DECIMAL 整数 : SIGNED 无符号整数 : UNSIGNED 因为要转换为数字类型,如果是’100.12%’这种格式,最好是用decimal 新的比较方法如下:mysql...DECIMAL(10,2)) >CAST(‘99.6%’ AS DECIMAL(10,2)) bj; +—-+ | bj | +—-+ | 1 | +—-+ 1 row in set (0.00 sec) mysql

2.4K20

mysql语句截取字符串_mysql分割字符串split

MySQL 字符串截取相关函数: 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例: select left(content,200) as abstract...from my_content_t 2、从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例: select right(content,200) as...str返回一个子字符串,起始于位置 pos。...带有len参数的格式从字符串str返回一个长度同len字符相同的子字符串,起始于位置 pos。 使用 FROM的格式为标准 SQL 语法。也可能对pos使用一个负值。...假若这样,则子字符串的位置起始于字符串结尾的pos 字符,而不是字符串的开头位置。在以下格式的函数中可以对pos 使用一个负值。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

4.7K30

MySQL字符串函数

字符串函数是MySQL中常用的函数。 字符串函数主要用于处理表中的字符串字符串函数包括求字符串长度、合并字符串、在字符串中插入子串和大小写字母之间的转换等函数。...MySQL中常用的字符串函数如下表所示: char_length(s) 返回字符串s的字符数 length(s) 返回字符串s的长度(一个中文字母长度为3) concat(s1,s2,...)...lower(s) lcase(s) 将s字符串中的所有大写字母变成小写 left(s,n) 返回字符串s的前n个字符 rigth(s,n) 返回字符串s的后n个字符 lpad(s1,len,s2) 将字符串循环...去除字符串s开始处的空格 rtrim(s) 去除字符串s结尾处的空格 repeat(s,n) 返回将字符串s重复n次后的字符串 space(n) 返回n个空格 replace(s,s1,s2) 将字符串...s2替代字符串s中的子字符串s1 strcmp(s1,s2) s1s2,返回1; substring(s,n,len) 返回从字符串s的第n个字符开始长度为len的子字符串 mid(s,n,len) 返回从字符串

2.8K20
领券