ruby-on-rails - 将 Rails 6 与 postgres 数据库一起使用时是否有理由使用字符串数据类型?

标签 ruby-on-rails postgresql ruby-on-rails-6

我明白了here :text 数据类型的执行效果似乎与 :string

完全相同

This特别评论:

PostgreSQL implementation prefers text. The only difference for pg string/text is constraint on length for string. No performance differences.

在使用 postgresql 数据库制作 Rails 应用程序时,有什么充分的理由使用 :string 吗?

最佳答案

性能上没有区别,语义上有区别。

一些库(例如 simpleform)会查看数据库中字段的数据类型,并根据它的不同执行不同的操作。简单表单将添加一个数字输入(如果是数字)、复选框(如果是 bool 值)等等。对于本例,它将为 string 添加一个单行文本字段,为 text 添加一个多行文本框。

由于性能没有差异,因此您可以使用其中任何一个,但它对于表示语义仍然很有用。

关于ruby-on-rails - 将 Rails 6 与 postgres 数据库一起使用时是否有理由使用字符串数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64044175/

相关文章:

mysql - 生成使用数据库中预先存在的数据的模型

ruby-on-rails - 《敏捷 Web 开发 Rails 4 - 第 11 章》一书中的 Rails 远程调用内部服务器错误 500

css - Rails 表单内联

mysql - 从一个表中加入两个 select 语句

ruby-on-rails - 如何修复我的 UserMailer/Devise::Mailer 以满足 Rails 6 中的弃用警告?

ruby-on-rails - 将 Rails 应用程序与 Google Apps 集成

postgresql - 在 PostgreSQL 中进行 DROP 操作时避免对引用表的独占访问锁

arrays - 如何在 Postgresql 中获取数组的 JavaScript/JSON 数组?

ruby-on-rails - 如何将参数传递到邮件程序方法中? rails 6

ruby-on-rails - Rails 6 - Action 文本和 API