15

我需要更新里面有 html 标签的数据,所以在 liquibase 上写了这个

<sql> update table_something set table_content = " something <br/> in the next line " </sql>

它显然在 liquibase 上不起作用(我遇到了 loooong 错误.. 并且毫无意义)。我试图删除<br/>并且它有效。

我的问题是,是否可以在 Liquibase 中插入/更新包含 xml 标签的内容?

我正在使用 liquibase 1.9.3 和 Grails 1.1.1

编辑:忘记在我的示例中设置代码示例标记。

4

2 回答 2

19

正如 liquibase 作者在这里提到的,您需要在 <sql> 中添加 CDATA 部分。

在您的特定示例中,它将变为:

<sql><![CDATA[ update table_something set table_content = " something <br/> in the next line " ]]></sql>
于 2009-07-05T11:27:18.653 回答
8

最好不要使用<sql>标签(我添加了 where 子句......):

<changeSet author="author" id="table_something_1">
    <update tableName="table_something">
        <column name="table_content"><![CDATA[ something <br/> in the next line ]]></column>
        <where>id=1</where>
    </update>
    <rollback />
</changeSet>
于 2014-09-11T00:02:23.620 回答