mysql - 如何在整数列中存储 64 位字符串?

标签 mysql coldfusion

我有一个专栏,其中我将 domain_name 转换为 64 位 bigint 字符串。

它成功地转换了它。

CONV(SUBSTRING(CAST(SHA(TRIM("#arguments.domain_name#")) AS CHAR), 1, 16), 16, 10),

我想在另一个表中使用这个转换后的字符串并尝试将其存储为整数。当我尝试像这样类型转换它时

CAST(arguments.siteid AS INT(11) AS INTEGER)

出现错误;你有一个 SQL 语法错误。

我试过用另一种方式存储它

<cfqueryparam value="#arguments.siteid#" cfsqltype="cf_sql_integer" />

虽然站点 ID 是 14177909183865716377,但它正在存储类似 2147483647 的内容。 谁能帮我如何转换它?

最佳答案

鉴于事实证明是这样,将我在评论中的观察升级为答案:

I think you'll find 2147483647 is the biggest value you can put in an integer. You'll need to use an unsigned BIGINT, I think, based on the docs: "MySQL 5.0 Reference Manual :: 11 Data Types :: Integer Types (Exact Value)".

关于mysql - 如何在整数列中存储 64 位字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20608254/

相关文章:

coldfusion - Coldfusion 中的异步 HTTP 请求

rest - 是否可以使用 HTTP BASIC 身份验证保护 ColdFusion 11 REST 服务?

jquery - 如何同时返回 "id"和 "text"

javascript - ColdFusion 表单中的复选框

mysql删除触发器

mysql - 如何从 amfphp 数组将字符串值显示到 AS3 (ActionScript 3.0) 中的文本输入中?

php - Laravel 身份验证 : how to get user attributes?

php - 获取/设置 magento 表中的自定义列

mysql - 使用Mysql将UTC 12小时时间格式转换为印度时间

mysql - CFWheels:在 WHERE 子句中使用 SQL 函数?