0

您将如何使表格中的整数长度等于一组字符,不多也不少。有办法吗?

我尝试了 CHECK 语法,但没有奏效。

CREATE TABLE manufacturer(
mid CHAR(4) <-- How would i make the input here exactly 4 when using the INSERT statement.
company_name VARCHAR(20),
);

谢谢 :)

4

1 回答 1

2

如果我理解得很好,您希望您的专栏始终保持相同的长度。如果是这种情况,请检查以下代码:

 SELECT RPAD(SUBSTR('this is a very long text' FROM 1 FOR 10), 10, '-'),
        RPAD(SUBSTR('short' FROM 1 FOR 10), 10, '-');

如果您的文本长度超过 10 个字符,那么它将被裁剪。如果您的文本短于 10 个字符,则将在字符串末尾添加“-”以使其长度为 10 个字符。

在您的情况下,这将匹配以下内容:

INSERT INTO your_table (your_column) VALUES (RPAD(SUBSTR('your_text', FROM 1 TO 4), 4, '-')));

尽管您也可以以编程方式执行此操作。

无论如何,请让我知道这是否是您正在寻找的。

于 2013-05-28T18:11:39.810 回答