如何解决MariaDB 连接器删除 ZEROFILL 字段上的前导零
我刚刚从 MysqL 5.7 升级到 MariaDB 10.3,但有一个功能差异让我感到困惑。我有一个以下类型的索引字段:
UserID | int(9) unsigned zerofill
如果我执行以下查询:
SELECT UserID FROM User WHERE UserID='000000003';
我明白了:
+-----------+
| UserID |
+-----------+
| 000000003 |
+-----------+
如果我使用 Node.js 中的 MariaDB 回调连接器,我会得到以下信息:
[
{
"UserID": 3
}
]
如何防止 MariaDB 连接器/Node.js 回调 API 从索引中去除前导零?现在我知道我可以在所有查询之后填充 API 中索引引用的每个实例,但这似乎......效率低下。
有没有更好的办法?谢谢。
解决方法
node.js 驱动程序自动评估值类型。由于这是一个整数,因此 3 是预期值。
如果你明确想要一个字符串,你可以通过 sql 来判断,比如查询
select cast (UserID AS CHAR) as UserID from User WHERE UserID='000000003';
这将返回
[
{
"UserID": '000000003'
}
]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。