执行以下 SQL 会出现此错误。
alter table TABLE_NAME ADD FILE_DATA BLOB NULL default 'EMPTY_BLOB()'
Error starting at line 37 in command: alter table TABLE_NAME ADD FILE_DATA BLOB NULL default 'EMPTY_BLOB()' Error report: SQL Error: ORA-30649: missing DIRECTORY keyword 30649.0000 - "missing DIRECTORY keyword"
*Cause: DEFAULT DIRECTORY clause missing or incorrect.
*Action: Provide the DEFAULT DIRECTORY.
有人能帮帮我吗?
我可以创建一个 TYPE BLOB 的新列,或者我可以将创建为具有 DEFAULT 值的 VARCHAR 的同一列转换为 DEFAULT 值,然后将类型更改为 BLOB。但我无法做到他们中的任何一个。
最佳答案
假设您希望默认值为空 BLOB 而不是字符串 'EMPTY_BLOB()',您只需要删除引号
SQL> create table new_table (
2 col1 number
3 );
Table created.
SQL> alter table new_table
2 add( file_data blob default empty_blob() );
Table altered.
关于sql - 更改表 - 为 COLUMN 类型 BLOB 添加默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6688233/