2009-07-04 28 views
9

necesito actualizar mis datos que tienen la etiqueta HTML dentro de lo que escribió esto en Liquibasecómo insertar la etiqueta html dentro de sql en la migración de Liquibase?

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

que aparentemente no funciona en Liquibase (tengo errores loooong .. y sin sentido). Traté de eliminar <br/> y funciona.

mi pregunta es, ¿es posible insertar/actualizar algo que contenga la etiqueta xml en Liquibase?

estoy usando Liquibase 1.9.3 con Grails 1.1.1

editado: se olvidó de fijar la etiqueta ejemplo de código en mis ejemplos.

+0

su pregunta no está muy claro ¿Podría explicarnos un poco más cuál es su configuración? ¿Está utilizando el XML de liquibase directamente para definir sus conjuntos de cambios, o utiliza el DSL proporcionado por el plugin de autobase grails? ¿Es su "actualización ..." algo que intenta ejecutar en una refactorización sql personalizada (http://www.liquibase.org/manual/custom_sql)? –

+0

lo siento, me olvidé de agregar el formato del código en mi ejemplo. estaba tratando de ejecutar una migración que contiene comandos "sql" y en el interior puse una etiqueta html/xml. – nightingale2k1

Respuesta

15

Como el autor de liquibase menciona here, necesitará agregar la sección CDATA dentro de <sql>.

En el ejemplo particular que se convertiría en:

<sql><![CDATA[ update table_something set table_content = " something <br/> in the next line " ]]></sql> 
4

Incluso mejor no utilizar una etiqueta <sql> en absoluto (que añade la cláusula 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> 
Cuestiones relacionadas