是否可以在具有不同的两个数据库之间传播 AQ 消息NLS_LENGTH_SEMANTICS
,即 LOCAL 数据库具有 BYTE( nls_database_parameters
view) 和 REMOTE 数据库具有 CHAR( nls_database_parameters
view),如果可以,那么如何?我已经尝试将会话NLS_LENGTH_SEMANTICS
参数值设置为BYTE
然后重新创建远程数据库 AQ OBJECT_TYPE,用 BYTE 覆盖对象类型属性声明并在本地数据库中创建 OID 类型并在传播中使用转换,但它没有成功,仍然得到
“ORA-25215: user_data 类型和队列类型不匹配”
传播时。
这是我在 AQ 表中使用的对象类型:
create or replace type obj_sepa_msg as object
(
client varchar2(50),
cartridge varchar2(20),
iban varchar2(34),
file_name varchar2(4000),
data clob
)