BLOB数据:使用Oracle进行Liquibase
问题: 如何创建一个表包含一个列为LOB(BLOB / CLOB)与“DISABLE STORAGE IN ROW”
说明: 我们正在尝试创建一个包含Liquibase for Oracle DB中的BLOB数据的表 现在的挑战是我们需要这个特定列(BLOB)不应该包含行中的日期,而应该将它链接到表空间。 意思是:我们想为BLOB内容设置“行中的禁用存储”
现在,如果我们按照以下方式为Oracle DB运行SQL,我们就能实现相同的目标
CREATE TABLE DEVMDR1.VCH_ACTIVITY_DEFN
(
...
CREATE_TS TIMESTAMP,
CREATED_BY VARCHAR2(50),
DEFN_XML BLOB,
MODIFIED_BY VARCHAR2(50),
MODIFY_TS TIMESTAMP,
...
PRIMARY KEY ("ACTIVITY_DEFN_KEY")
) LOB ("DEFN_XML") STORE AS (
TABLESPACE "USERS" DISABLE STORAGE IN ROW CHUNK 8192
CACHE NOCOMPRESS ) ;
但我们无法使用LIQUIBASE实现相同目标。
有人可以提出与最早实现相同的观点相同的观点。
答案 0 :(得分:0)
您可以将sql语句保存在单独的文件中(例如VCH_ACTIVITY_DEFN.sql)并使用sqlFile标记,该标记允许您指定任何sql语句并将其存储在文件外部。