MySQL(默认允许)
MySQL 允许你用 字符串 查询 BIGINT,但会有隐式转换:
SELECT * FROM u_user WHERE id = '123456789'1011121314;
等价于:
SELECT * FROM u_user WHERE id = CAST('123456789'1011121314' AS UNSIGNED);
不同数据库的处理方式
数据库 | 允许字符串匹配 BIGINT 吗? | 处理方式 |
---|
MySQL | ✅ 允许 | 自动转换 |
PostgreSQL | 🚫 不允许 | 需要手动转换 |
SQLite | ✅ 允许 | 自动转换 |
SQL Server | ✅ 允许 | 自动转换 |