Estoy intentando averiguar cómo usar la configuración de NHibernate con la asignación para actualizar los esquemas de tabla, en lugar de descartarlos y volver a crearlos.¿Cómo actualizar los esquemas de tabla de base de datos con la generación de esquema NHibernate?
Actualmente estoy usando el obj NHibernate.Tool.hbm2ddl.SchemaExport
con FluentNHibernate para generar el esquema de base de datos para una base de datos mysql. Si bien no puedo decir que es un gran problema, cada vez que llamo al SchemaExport.Execute
en la base de datos, va a soltar todas las tablas y luego volver a crearlas.
Lo que sería mucho más genial es si solo pudiera actualizar las estructuras de tablas existentes conservando los datos siempre que sea posible. Pero realmente no quiero usar un producto comercial, o un generador de código, porque no me gusta la generación de código en general, y no necesito esto lo suficiente como para considerar pagarlo. Así que con suerte cualquier respuesta tendría en cuenta estas advertencias.
no podemos modificar la configuración del terreno, una vez creado, por ejemplo, modificar la longitud de la cadena de nvarchar (255) a nvarchar (45), ¿podemos? –
Esa es una buena pregunta, la versión de creación de hbm2ddl te permite hacer esto, pero he notado que a veces tengo que soltar las tablas antes de que la creación se ejecute correctamente. –
Esto funciona de manera brillante, esta técnica también es adecuada para Fluent NHibernate. – Contango