PostgreSQL Varchar17 Mar 2025 | 6 分钟阅读 在本节中,我们将了解 PostgreSQL varchar 数据类型的工作原理,它允许我们存储任意长度的字符。我们还将了解 Varchar 数据类型和空格的示例。 什么是 PostgreSQL Varchar 数据类型?在 PostgreSQL 中,Varchar 数据类型用于存储无限长度的字符。它可以容纳最大长度为 65,535 字节的字符串。 换句话说,我们可以说 PostgreSQL Varchar 数据类型使用了表示为 VARCHAR 的字符数据类型。
注意:varchar 数据类型是一种可变长度字符串,可以包含特殊字符、数字和字母。n 存储的文本长度最多可以为 0 到 65535 个字符。PostgreSQL Varchar 数据类型语法PostgreSQL Varchar 数据类型的语法如下: PostgreSQL Varchar 数据类型示例让我们通过不同的示例来了解 PostgreSQL Varchar 数据类型是如何工作的。 为此,我们将使用 CREATE 命令创建一个名为 Varchar_demo 的新表,并使用 INSERT 命令插入一些值。 我们将使用 CREATE 命令在 Organization 数据库中创建 Varchar_demo 表。 输出 成功执行上述命令后,将创建 Varchar_demo 表,如下图所示。 ![]() 一旦生成了 Varchar_demo 表,我们将使用 INSERT 命令向其中插入一些值。 输出 实现上述命令后,我们将得到以下输出:PostgreSQL 将发出错误“对于类型 character varying (1) 的值太长”。 这意味着 P 列的数据类型是 VARCHAR (1),而我们正尝试在该特定列中插入一个包含三个字符的字符串,正如我们在下面的截图中所见。 ![]() 要解决上述错误,我们将使用下面的命令: 输出 执行上述命令后,PostgreSQL 会为 Q 列重新发出类似的错误,这意味着 Q 列的数据类型是 VARCHAR (10)。而输入的字符数超过了 10 个,正如我们在下面的截图中看到的。 ![]() 因此,为了解决以上所有错误,我们将使用以下命令: 输出 执行上述命令后,我们将得到以下结果:值已成功插入到 Varchar_demo 表中。 ![]() 如上图所示,我们已成功插入 P 和 Q 列的值。 创建并插入 Varchar_demo 表的值后,我们将使用 SELECT 命令返回 Varchar_demo 表的所有行。 输出 实现上述命令后,我们将得到以下结果,其中我们可以看到 Column P 和 Column Q 的值都已成功插入到 Varchar_demo 表中。 ![]() 示例 2让我们看另一个示例,以详细了解 Varchar 数据类型。我们将使用 CREATE 命令创建一个名为 Varchar_demo2 的新表,并使用 INSERT 命令插入一些值。 我们将使用 CREATE 命令在与上面相同的 Organization 数据库中创建 Varchar_demo2。 输出 执行上述命令后,Varchar_demo2 表已成功创建,如下图所示。 ![]() 一旦生成了 Varchar_demo2 表,我们就可以使用 INSERT 命令向其中插入一些值。 输出 实现上述命令后。PostgreSQL 会给出错误消息“对于类型 Character (1) 的值太长”。输出更清楚地解释了这一点。 ![]() PostgreSQL VARCHAR 和空格示例PostgreSQL 在存储 varchar 值时不会扩展空间,并且 PostgreSQL 在存储或恢复 Varchar 值时也会保留尾随空格。 为此,我们将通过以下示例来理解这一点:在 Insert 命令中,我们在上面示例中创建的 Varchar_demo2 表的 Name 列中添加值。 输出 实现上述命令后,我们将得到以下结果:值已成功插入到 Varchar_demo2 表中。 ![]() 创建并插入 Varchar_demo2 表的值后,我们将使用 SELECT 命令从 Varchar_demo2 表中检索值。 输出 实现上述命令后,我们将得到以下结果,其中 PostgreSQL 在计算长度时包含尾随空格,因为它不会增加列的长度。 ![]() 如果我们尝试插入一个尾随空格的 Varchar 值,该值超出了列的长度,PostgreSQL 会截断尾随空格。PostgreSQL 还会发出警告。正如我们在下面的示例中所示。 输出 执行上述命令后,我们将得到以下结果: ![]() 在上面的命令中,插入的值长度为六,插入到 Name 列中。该值仍然被插入到列中。但是,PostgreSQL 在添加值之前会截断尾随空格。 我们可以使用以下命令进行检查,其中 Insert 命令已成功添加。 输出 实现上述命令后,我们将得到以下输出,仍然有一个警告:第 1 行的列 'Name' 的数据被截断。 ![]() PostgreSQL CHAR 和 PostgreSQL VARCHAR 数据类型之间的区别PostgreSQL CHAR 和 VARCHAR 数据类型都遵循 ASCII 字符。它们在存储和从数据库检索数据方面基本相似,但存在差异。 下表重点介绍了 CHAR 和 VARCHAR 数据类型之间的主要区别。
概述在 PostgreSQL Varchar 数据类型部分,我们学习了以下主题:
|
我们请求您订阅我们的新闻通讯以获取最新更新。