sql - 你怎么知道在sql中什么时候使用varchar什么时候使用text?

标签 sql string postgresql text varchar

这似乎是一个非常武断的决定。 在大多数情况下,两者都可以完成同样的事情。 在我看来,限制 varchar 的长度就像是搬起石头砸自己的脚,因为您永远不知道需要多长的字段。

对于为您的字符串字段选择 VARCHAR 或 TEXT 是否有任何具体指南?

我将使用 postgresql 和 python 的 sqlalchemy orm 框架。

最佳答案

在 PostgreSQL 中,varchartext 之间没有技术上的区别

您可以将 varchar(nnn) 视为具有禁止存储更大值的检查约束的 text 列。

所以每次你想有一个长度限制时,使用varchar(nnn)

如果你不想限制数据的长度使用text

关于sql - 你怎么知道在sql中什么时候使用varchar什么时候使用text?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4705496/

相关文章:

python - 如何去除字符串中的模式?

c# - 从 C# 中的字符串中去除字节顺序标记

postgresql - pgAdmin4 - 无法联系 postgresql 应用程序服务器

mysql - 如果值为NULL,返回上层值

SQL - 没有规范就无法编译 <package> 的主体

mysql - 如何修复程序中的 "ambiguous"where 子句

python - 将字符串格式化为 Python 中的特定字符限制

SQL:努力编写 SQL 脚本

python - 现在的 Postgres 分区选项?

postgresql - 模式名称中的点 (.) 使 pg_dump 不可用