PostgreSQL 字符


PostgreSQL 字符

在本节中,我们将了解PostgreSQL 字符数据类型的工作原理,它允许我们为表选择正确的字符类型。我们还看到了字符数据类型的**例子**。

什么是 PostgreSQL 字符数据类型?

PostgreSQL 中,字符数据表示字符类型值,也称为CHAR。换句话说,我们可以说 PostgreSQL 字符数据类型用于存储有限长度的字符。

我们有下表,其中包含PostgreSQL支持的所有字符数据类型:

数据类型 解释
char(n) 这里n表示存储定长字符串的字符数。右边填充的空格等于字符的大小。
character(n) 这里n存储固定长度字符串的字符数。右边填充的空格等于字符的大小。
varchar(n) 这里n要存储的字符数。变长字符串。
character varying(n) 这里n要存储的字符数。变长字符串。
text 变长字符串。

在上表中,CHAR(n) 和 VARCHAR(n)最多可以存储n 个字符,其中n表示字符长度的限制。如果未定义n,则默认为char (1)character (1)。

如果我们尝试在用char(n)指定的列中获取更长的字符串,PostgreSQL 会在输出中显示错误。

尽管如此,如果附加字符都是空格,我们有例外,那么 PostgreSQL 会将空格修剪到最大长度 (n) 并存储字符串。

如果字符串转换为CHAR(n) 或 VARCHAR(n),PostgreSQL 会将字符串缩短为n 个字符,然后再将其插入表中。

PostgreSQL 字符数据类型的语法

PostgreSQL 字符数据类型的语法如下:

  1. 变量名 CHAR(n)

PostgreSQL 字符数据类型示例

让我们看不同的例子来理解PostgreSQL 字符数据类型是如何工作的。

为此,我们将在CREATE命令的帮助下创建一个名为Char_demo 的新表,并使用INSERT命令插入一些值。

我们将使用CREATE命令在组织数据库中创建Char_demo表:

CREATE TABLE Char_demo (  
    Id serial PRIMARY KEY,  
    A CHAR (1),  
    B CHAR (10)  
);

输出

执行上述命令后,Char_demo表已经创建成功,如下图所示:

PostgreSQL 字符

一旦Char_demo\表已经产生,我们可以通过插入一些值INSERT命令。

INSERT INTO Char_demo (A, B)  
VALUES ('Javatpoint',  
        'It is a demo test for char'  
        );

输出

执行上述命令后,我们将得到以下输出,PostgreSQL 将发出错误“类型字符 (1) 的值太长”。

这意味着A列的数据类型是char (1),我们尝试将包含三个字符的字符串插入到特定列中,如下面的屏幕截图所示:

PostgreSQL 字符

要解决上述错误,我们将使用以下命令,如下所示:

INSERT INTO Char_demo (A, B)  
VALUES ('J',  
        'It is a demo test for char'  
        );

输出

在执行上述命令时,我们将得到以下输出,并且 PostgreSQL 将再次发出错误“类型字符 (10) 的值太长”。

这意味着B列的数据类型是char (10),而输入的字符数大于10,我们可以在下面的屏幕截图中观察到:

PostgreSQL 字符

因此,要解决上述两个错误,我们将使用以下命令:

INSERT INTO Char_demo (A, B)  
VALUES ('J',  
        'Javatpoint'  
        );

输出

执行上述命令后,我们会得到如下结果,显示该值已成功插入到Char_demo\表中。

PostgreSQL 字符

正如我们在上面的屏幕截图中看到的,我们可以成功地将值插入到A和 B列的字符数据类型中

创建并插入Char_demo表的值后,我们将使用SELECT命令返回Char_demo表的所有行:

SELECT * FROM Char_demo;

输出

成功执行上述命令后,我们将得到以下结果,可以看到A列和B列的值都已成功输入。

PostgreSQL 字符

概述

PostgreSQL字符数据类型部分,我们了解到字符数据类型可以用于定长字符。