尝试将 CLOB 类型的列添加到 DB2 中的 table
Trying to add column of CLOB type to table in DB2
我需要向数据库中现有的 table 添加类型 "CLOB" 的列,因此我使用以下查询:
alter table foldet add("FOLDER_FIELD_VALUE_TWO" CLOB);
但我收到以下错误
Error starting at line : 5 in command -
alter table foldet add("FOLDER_FIELD_VALUE_TWO" CLOB)
Error report -
SQL Error: DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=CLOB;DER_FIELD_VALUE_TWO";JOIN , DRIVER=3.63.75
如何向 table 添加一列?
ALTER TABLE table_name
ADD column_name datatype
这是向 table 添加列的语法。所以如果你去掉括号我认为应该没问题。
您收到错误 (-551),因为您在 table 上没有 ALTER
权限。错误消息中都有,如手册中所示。
SQL Error: SQLCODE=-551, SQLSTATE=42501, SQLERRMC=IPASS;ALTER TABLE;FOLDET, DRIVER=3.63.75
^^^^ ^^^ ^^^^^^^^^^ ^^^
error code user privilege table
您没有说什么 DB2 版本或平台发送了错误响应,但是 SQLSTATE/SQLCODE 值应该在所有这些版本或平台上基本一致。在DB2 for i 7.2中查找SQLSTATE 42501,给出的原因是:
- 授权ID没有权限执行
对已识别对象的指定操作。
IOW,当您连接到收到错误的用户 ID 时,您没有足够的权限更改 table 的结构。
SQLSTATE 42501 来自您的最新评论。根据您的问题,SQLSTATE 42601 是:
- 字符、标记或子句无效或缺失。
你的评论描述了你是如何清理它的,@SimeonVanov 的回答正确地解决了这个问题。
我需要向数据库中现有的 table 添加类型 "CLOB" 的列,因此我使用以下查询:
alter table foldet add("FOLDER_FIELD_VALUE_TWO" CLOB);
但我收到以下错误
Error starting at line : 5 in command - alter table foldet add("FOLDER_FIELD_VALUE_TWO" CLOB) Error report - SQL Error: DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=CLOB;DER_FIELD_VALUE_TWO";JOIN , DRIVER=3.63.75
如何向 table 添加一列?
ALTER TABLE table_name
ADD column_name datatype
这是向 table 添加列的语法。所以如果你去掉括号我认为应该没问题。
您收到错误 (-551),因为您在 table 上没有 ALTER
权限。错误消息中都有,如手册中所示。
SQL Error: SQLCODE=-551, SQLSTATE=42501, SQLERRMC=IPASS;ALTER TABLE;FOLDET, DRIVER=3.63.75
^^^^ ^^^ ^^^^^^^^^^ ^^^
error code user privilege table
您没有说什么 DB2 版本或平台发送了错误响应,但是 SQLSTATE/SQLCODE 值应该在所有这些版本或平台上基本一致。在DB2 for i 7.2中查找SQLSTATE 42501,给出的原因是:
- 授权ID没有权限执行 对已识别对象的指定操作。
IOW,当您连接到收到错误的用户 ID 时,您没有足够的权限更改 table 的结构。
SQLSTATE 42501 来自您的最新评论。根据您的问题,SQLSTATE 42601 是:
- 字符、标记或子句无效或缺失。
你的评论描述了你是如何清理它的,@SimeonVanov 的回答正确地解决了这个问题。