mysql - 如何填充位数据类型等于 1 的所有位?
问题描述
这是我的查询:
UPDATE users SET active = -1 WHERE id = ? AND active IS NULL
它适用于我当前的 MySQL 版本。我的意思是它设置1111111111
为active
价值。注意active
是BIT(10)
数据类型。
但最近我升级了 MySQL 版本,它抛出:
字符串(94)“SQLSTATE [22001]:字符串数据,右截断:1406 数据太长,对于第 1 行的列‘活动’”
知道如何解决吗?
解决方案
如果你想要一些有一堆位的东西,请使用BINARY(2)
16 位。如果您需要一个非常长的位字符串,请使用BLOB
or MEDIUMBLOB
。
推荐阅读
- javascript - HTML 上的 Javascript 输入和输出
- php - 如何分组 GROUP_CONCAT()?
- php - 使用 Xpath 表达式并检查元素的计数
- java - 跨度未发送到 zipkin
- html - HTML href - 悬停不系统
- c# - 如何提高使用 C# 从数据库加载产品列表的进程的性能?
- apache-spark - 在数据框中创建假异常 - pyspark
- python - 无法解决 python numpy zeros 中的内存错误
- android - 如何在播放时下载视频,使用 ExoPlayer?
- python - 安装 OpenVino 生成与张量流相关的错误