重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Mysql关于bit类型的用法:
黄龙ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
官方的资料如下:
9.1.5. 位字段值
可以使用b'value'符号写位字段值。value是一个用0和1写成的二进制值。
位字段符号可以方便指定分配给BIT列的值:
mysql CREATE TABLE t (b BIT(8));
mysql INSERT INTO t SET b = b'11111111';
mysql INSERT INTO t SET b = b'1010';
+------+----------+----------+----------+
| b+0 | BIN(b+0) | OCT(b+0) | HEX(b+0) |
+------+----------+----------+----------+
| 255 | 11111111 | 377 | FF || 10 | 1010 | 12 | A |
+------+----------+----------+----------+
Mysql:bit类型的查询与插入
Posted 10月 11, 2010 by logineran in MYSQL. Tagged: MYSQL.
mysql有种字段类型是bit。
1.如何插入呢?
它的插入必须采用:
可以使用b’value’符号写位字段值。value是一个用0和1写成的二进制值。
mysql create table an_bit (id bit(8));
Query OK, 0 rows affected (0.00 sec)
mysql insert into an_bit values (11);
Query OK, 1 row affected (0.00 sec)
虽然可以插入,但是实际插入的数值是11(十进制),不是3(十进制)。
mysql insert into an_bit values (b’11′);
Query OK, 1 row affected (0.00 sec)
这才是正确的插入方法。 插入的值是3(十进制)
2. 如何查询呢?
mysql select * from an_bit;
+——+
| id |
+——+
|
|
| |
+——+
2 rows in set (0.00 sec)
这样是不对的,看不到东西
mysql select id+0 from an_bit;
+——+
| id+0 |
+——+
| 11 |
| 3 |
+——+
2 rows in set (0.00 sec)
这是正确的,可以看到十进制的值。
mysql select bin(id+0) from an_bit;
+———–+
| bin(id+0) |
+———–+
| 1011 |
| 11 |
+———–+
2 rows in set (0.00 sec)
这是二进制的值
mysql select oct(id+0) from an_bit;
+———–+
| oct(id+0) |
+———–+
| 13 |
| 3 |
+———–+
2 rows in set (0.00 sec)
这是八进制的值
mysql select hex(id+0) from an_bit;
+———–+
| hex(id+0) |
+———–+
| B |
| 3 |
+———–+
2 rows in set (0.00 sec)
这是十六进制的值
replace一般用于替换字段值中的一段字符串
整体替换直接使用where语句定位到空白字段再重新赋值即可:
UPDATE Content SET 分类='24' where 分类=''
1、创建mysql测试表,create table test_city(cityid varchar(20));
2、插入测试数据,
insert into test_city values(1);
insert into test_city values('1,2,3');
insert into test_city values('1,2,3,4');
insert into test_city values(2);
insert into test_city values(3);
3、编写sql,查询cityid为3的记录,
select * from test_city where cityid in ('1','2','3','4','5','6')
4、编写sql,查询cityid为'1,2,3'的记录,
select * from test_city where cityid in ('1,2,3')
mysql中text 最大长度为65,535(2的16次方–1)字符的TEXT列。
如果觉得text长度不够,可以选择:
1、MEDIUMTEXT最大长度为16,777,215
2、LONGTEXT最大长度为4,294,967,295
使用方法:
mysql中的text对应oracle中的clob,又分为TINYTEXT, TEXT, MEDIUMTEXT,LONGTEXT, 都是表示数据长度类型的一种。
语法:[ UNSIGNED ] mediutext
TINYTEXT: 256 bytes
TEXT: 65,535 bytes = ~64kb
MEDIUMTEXT: 16,777,215 bytes = ~16MB
扩展资料:
text等字段需要慎重使用,多个text字段会报错,Row size too large 表示行的内容太多了。
修改方法:
1、首先查询下参数的值:
mysql SELECT @@global.max_sort_length;
2、然后去设置这个值:(数字根据需要自行填写)
mysql SET GLOBAL max_sort_length=2048;
当排序时只使用该列的前max_sort_length个字节。max_sort_length的 默认值是1024;该值可以在启动mysqld服务器时使用–max_sort_length选项进行更改。
text 和 char varchar blob这几种类型的区别:
char:定长,最大255个字符
varchar:变长,最大65535个字符(既是单列的限制,又是整行的限制)
text:变长,有字符集的大对象,并根据字符集进行排序和校验,大小写不敏感
blob:变长,无字符集的二进制大对象,大小写敏感