【发布时间】:2020-06-01 06:52:05
【问题描述】:
我在 rails Postgresql 表中有一个数据类型为字符串的字段。当我输入超过 255 的值时会发生什么。Postgresql 是否将字符串剪切为 255 个字符或禁止输入?
【问题讨论】:
-
在发布此类问题之前,请先查找并阅读文档。
标签: ruby-on-rails string postgresql validation
我在 rails Postgresql 表中有一个数据类型为字符串的字段。当我输入超过 255 的值时会发生什么。Postgresql 是否将字符串剪切为 255 个字符或禁止输入?
【问题讨论】:
标签: ruby-on-rails string postgresql validation
根据http://www.sqlines.com/postgresql/datatypes/text
...例如,VARCHAR(255) 不允许插入长度超过 255 个字符的字符串。
它不会为你截断字符串,如果你尝试插入它会失败。
【讨论】:
如果您尝试写入一个长于字段限制的值,Postgres 将抛出错误:https://www.postgresql.org/docs/9.1/datatype-character.html
如果您需要更大的限制并想要控制它而不是使用 text 类型,您可以执行以下操作(通过迁移):change_column :table, :column, :string, limit: 510
【讨论】: