【问题标题】:In postgresql character varying data type can consider a dot as a char?在 postgresql 中,不同的数据类型可以将点视为字符吗?
【发布时间】:2016-04-30 11:51:55
【问题描述】:

在 PostgreSQL 中,我们可以插入像“.”这样的数据。当数据类型为字符变化 (10) 时,大小>10。 点在 PostgreSQL 中被视为字符串吗? 我没有在文档中找到信息。

【问题讨论】:

  • 您是在问点是否是有效字符?
  • 一个'.'是“正常”的有效字符; 'Huh..?' 是有效的 SQL 字符串文字。如果不允许标点符号,那么英文散文就不能直接存储在数据库中,这会让很多锦鲤伤心。
  • 不,你不能。字符变化(10)的大小限制为 10 个字符。这不会限制您使用 10 个八位字节,但会限制您使用 10 个字符。
  • 这是微不足道的测试。您在测试时看到了什么?

标签: postgresql


【解决方案1】:

我在理解这个问题时遇到了一些困难,所以我会按照我的理解来回答。

我刚刚对其进行了测试,并将"." 设置为对我有用的列的值(PostgreSQL 9.5;我正在使用 Postico)。只要没有限制(例如唯一性,必须是 UUID,...),句点似乎被视为任何其他字符。

编辑:如果 Postgres 的限制为 10,则不能存储像 ".........." 这样长度超过 10 的字符串(刚刚在 SQLFiddle 上测试过)。

【讨论】:

  • 所以如果点被认为是postgresql中的一个字符,当大小限制为10时,是否允许超过10个点的条目?在这种情况下 user2864740 是错误的,对于巴林来说,是的,对我来说它也有效,但我对数据类型的大小提出了疑问。谢谢
  • 不,我不明白您的编辑,为什么 PostgreSQL 在限制为 10 个时接受超过 10 个字符?
  • 嗨,Balin 现在一切正常,我在家里测试,环境不稳定,谢谢你的帮助
猜你喜欢
  • 2018-11-09
  • 2023-04-07
  • 2021-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多