问题标签 [liquibase]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 JPA(带注释的实体)和 liquibase 进行休眠
如果您使用 xml 映射, liquibase 是 hibernate 的hbm2ddl_auto属性的完美替代品。但我使用 JPA 注释(休眠注释)。那么可以使用liquibase吗?
database - 如何在 Liquibase 迁移中的 sql 中插入 html 标签?
我需要更新里面有 html 标签的数据,所以在 liquibase 上写了这个
它显然在 liquibase 上不起作用(我遇到了 loooong 错误.. 并且毫无意义)。我试图删除<br/>
并且它有效。
我的问题是,是否可以在 Liquibase 中插入/更新包含 xml 标签的内容?
我正在使用 liquibase 1.9.3 和 Grails 1.1.1
编辑:忘记在我的示例中设置代码示例标记。
database - Db 迁移 - Hibernate/JPA - hbm2ddl - 差异工具
我用:
- EJB3 / JPA(休眠)
- MySQL 5
我必须建立一个系统来帮助数据库迁移。尝试使用 LiquiBase,但它似乎还不够成熟,无法与 Hibernate 一起使用。
我想做的是:
- 我有 1.0 版的应用程序在生产中
- 我已经开发和测试了 2.0 版的应用程序
- 我想在生产中更新应用程序数据库而不丢失数据
实际上,我想使用新persistence.xml
数据库和生产数据库来生成旧数据库和新数据库之间的“增量”。我希望能够检索当 hbm2ddl 处于“更新”模式时执行的 SQL 代码。
此 SQL 代码将被修改(drop+create=rename 等...)以避免丢失可能发生的数据hbm2ddl.auto=update
。
我想这是可能的,因为 Hibernate 在使用hbm2ddl.auto=update
. 但我希望能够在 Ant 任务中使用hibernatetool
.
我在互联网上找不到很多关于此的信息,所以我想知道是否有人已经在这里做过类似的事情并且可以帮助我。
我做了以下事情:
我真的不知道该怎么做,我能够获得创建 sql 文件,但我只想要增量。我必须把 update="true" ?我可以在应用程序服务器之外使用带有持久性单元的 jpaconfig(数据库设置是在 Glassfish 上的 JNDI 资源上设置的)。(试过了,就是找不到数据库)
我还尝试使用<jdbcconfiguration propertyfile="hibtest.properties"></jdbcconfiguration>
或设置数据库的属性,persistence.xml
而不是使用 JNDI 资源。
我收到以下错误:
我使用 MySQL,我的 JDBC 属性是:
我的 JDBC MySQL 驱动程序位于${core.lib.server}: mysql-connector-java-5.1.7-bin.jar
. (我也尝试放入 classpath <fileset dir="/home/slorber/workspace/core/lib/server" includes="*.jar" />
。)
我还将它添加到 Ant(Eclipse 插件)的运行配置类路径中。
所以我的问题是:
- 我做错了什么来做我想做的事吗?
- 这是您使用 Hibernate 框架进行数据库迁移的方式吗?(如果不在手工制作的 SQL 文件中写入所有 db 更改,您还会做什么?)
database - 如何使用 liquibase,一个具体的例子
按照关于liquibase的快速入门,我创建了一个变更集(非常愚蠢:))
代码:
我创建了一个干净的架构,并启动了 migrate 命令。
Liquibase 创建了数据库,支持表 databasechangelog 和 ..lock。
现在我如何跟踪更改?我已经修改了变更集,添加了一个新的 createTable 元素,但是当我尝试命令“update”时,liquibase 告诉我这个
所以我不认为已经了解使用 liquibase 的方式。
有人可以指出我正确的方向吗?
谢谢
sql - liquibase - 无法让样品工作
我试图在 liquibase 1.9.5 中运行一个非常简单的示例(见最后)。
当我跑
我收到此错误消息。
迁移失败:ORA-03115:不支持的网络数据类型或表示
我正在使用 oracle 10g XE 10.2.0.1。据我了解(和谷歌搜索),这是一个错误,涉及将查询传递给准备好的语句的执行方法,或者“某事”(猜测我的 oracle 驱动程序)已被弃用。
我的属性文件如下所示:
有什么想法吗?
提前致谢。
文件 test_sample.xml
sql - Liquibase noob 再次罢工 - sqlFile 标签上的错误
我使用 sqlFile 包含一个 sql 脚本,该脚本使用 oracle 特定命令(NOCACHE、NO PARALLEL 等)创建表。我的 master.xml 文件包含所有 sql 脚本并执行它们。但是,当它检测到标签时,它会失败并打印此错误消息。
我的 master.xml 很简单
任何想法将不胜感激。提前致谢。
sql - 在删除不存在的序列、创建现有用户时防止错误
我有一堆创建/删除序列、用户和其他对象的 sql 脚本。我正在通过 liquibase 运行这些脚本,但它们失败了,因为当我尝试删除不存在的序列或创建现有用户时,oracle 会抱怨。
有没有一种预言机方法来防止错误发生?
类似的东西
如果不存在则创建用户/序列
如果存在则删除用户/安全
据我所知,我有以下选择:
- 写一个plsql脚本
- 使用 liquibase 上下文。
- 使用 liquibase 前提条件,但这意味着工作量太大。
任何想法/想法将不胜感激。
database - 如何使用 Liquibase 删除 Grails 中的索引
我有一个由 GORM(Grails 域)生成的表。它具有生成随机字符的外键/索引,例如 FKAC7AAF67162A158F。我需要删除不再需要的那个字段。
问题,我有一些服务器需要更新。所以我需要使用 Liquibase 创建一个迁移。但是我不知道如果索引是随机名称(每个服务器我有不同的名称),如何手动删除该索引。
是否可以在不知道其名称的情况下删除某物的索引?
grails - 如何将 Liquibase 迁移集成到我的 grails 构建中?
我有一个 Liquibase 迁移,我手动运行它以将几个 CSV 文件中的种子数据加载到我的数据库中。我想在每次运行时运行此迁移grails run-app
。
我想我有两个问题:
- 如何将
migrate
命令集成到我的grails run-app
? - 如何清除
DATABASECHANGELOG
以允许我一遍又一遍地运行相同的迁移?
或者,有没有更好的方法将大量数据从 CSV 文件加载到数据库中?