问题标签 [ddlutils]
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 - 在 Java 中获取数据库元数据的最简单方法是什么?
我对java.sql.DatabaseMetaData
界面很熟悉,但我觉得使用起来很笨拙。例如,为了找出表名,您必须调用getTables
并循环返回的ResultSet
,使用众所周知的文字作为列名。
有没有更简单的方法来获取数据库元数据?
java - DDLUtils 和自动增量值
尝试使用DDLUtils时,它似乎总是接管设置为自动增量的列的 id 值。我怎样才能防止这种情况?
例如,我有一个 Dogs 表,其中有一列称为 ownerID。列 ownerID 设置为自动增量。但是我的所有者列表不是连续的,存在差距(例如,ownerID 的 2、4、5、6、7、10 存在但不存在 1、3、8、9,因为它们已被删除)。问题是在 DdlToDatabase 恢复时,所有者 ID 被重置为 1、2、3、4 等等。这意味着我的 Dogs 表中通过 ownerID 的链接现在都是不正确的。
如何让 DDlUtils 正确导入自动递增字段的值?
java - 用于读取数据库模式的 Java 库
我正在寻找一个轻量级、开源、或多或少的跨数据库 Java 库,它允许我读取列、表和给定的完整性约束的元信息DataSource
。
java - 使用 org.apache.ddlutils.DdlUtilsException 的问题
我正在尝试使用org.apache.ddlutils包来读取数据库元数据。我写了以下方法:
但是该语句throws DdlUtilsException给出以下错误:
不能抛出 DdlUtilsException 类型的异常;异常类型必须是 Throwable 的子类
我根本不明白这个错误背后的原因,因为http://db.apache.org/ddlutils/api/org/apache/ddlutils/DdlUtilsException.html的 API清楚地说明了以下内容:
请指教。
java - 在 Oracle 11.1.0 中使用 DdlUtils 时出现问题
这个问题类似于问题https://stackoverflow.com/questions/3362965/problem-with-ddlutils-in-oracle-10g。由于我的问题(或至少我认为)与提到的问题略有不同,因此我发布了一个新问题。
我正在使用 DdlUtils-1.0、Java-6 (OpenJdk)、ojdbc6.jar 和 Oracle 11.1.0。迁移由 ant 任务启动。任务如下所示:
${source.platform} 设置为“oracle10”,因为 ddlutils 不支持 oracle11。模式定义的创建工作得很好,但是在转储数据时我面临以下异常:
[databaseToDdl] org.apache.ddlutils.model.ModelException:未知 JDBC 类型代码 2007 [databaseToDdl] 位于 org.apache.ddlutils.model.Column.setTypeCode(Column.java:215) [databaseToDdl] 位于 org.apache.ddlutils。 platform.JdbcModelReader.readColumn(JdbcModelReader.java:781) [databaseToDdl] at org.apache.ddlutils.platform.oracle.Oracle8ModelReader.readColumn(Oracle8ModelReader.java:117) [databaseToDdl] at org.apache.ddlutils.platform.JdbcModelReader。 readColumns(JdbcModelReader.java:755) [databaseToDdl] at org.apache.ddlutils.platform.JdbcModelReader.readTable(JdbcModelReader.java:565) [databaseToDdl] at org.apache.ddlutils.platform.oracle.Oracle8ModelReader.readTable(Oracle8ModelReader. java:102) [databaseToDdl] 在 org.apache.ddlutils.platform.oracle.Oracle10ModelReader.readTable(Oracle10ModelReader.java:80) [databaseToDdl] 在...
在http://download.oracle.com/javase/6/docs/api/constant-values.html#java.sql.Types.BIT中列出了 jdbc 类型代码。显然 ddlutils 从 jdbc 驱动程序中获取了此类型代码,但在 java.sql.Types 中找不到相应的类型。
有人知道如何解决这个问题吗?
java - DdlUtils:延迟插入
为了将数据库从 oracle 迁移到 mysql,我正在使用 ddlutils。迁移架构适用于我的目的,但由于缺少行,插入数据失败。日志文件的以下摘录对此进行了解释:
在数据库中,有一行 RECORDSTATUS_ID=0。有人遇到同样的问题吗?有人有想法,问题是什么?
java - 使用 HSQLDB (2.2.8) + DDLUtils 自动递增
我想将 HSQLDB 用作嵌入式数据库,但无法将其设置为auto-increment。
据我了解,[CALL] IDENTITY()
可以用来获取最后一个主键值。但是,通过 iBatis 和 HSQLDB 的实验DatabaseManagerSwing
不断返回 0 值。
如何获得自动增量以使用 HSQLDB?
编辑:
我没有提到我正在使用DDLUtils来自动生成表。以下不适合 HSQLDB:
此外,这里是用于域类的 iBatis SQL 映射:
java - 使用 ddlutils 转换数据库的问题
我必须将 mysql-database 转换为 java (derby) 数据库。这适用于 ant-tasks,绝对没问题。不幸的是,并非原始数据库中的所有表都可以在目标数据库中使用。由于我没有机会在 ddlUtils 的 ant-tasks 中按名称过滤表,因此我考虑使用 ddlUtils.jar 编写一个小型 Java 应用程序。
但是尝试这个,我什至无法从 mysql 数据库中提取模式和数据。对于像我这样的初学者来说,ddlUtils-api 中的示例解释得更少。
有没有更全面的例子来处理这个问题?
我的计划是将工作分成以下步骤:
- 从原始数据库获取 db-schema(由 TableNames 过滤)
- 从原始数据库中获取数据(由 TableNames 过滤)
- 使用简化的 db-schema 在目标数据库 (Java) 中创建模式
- 使用缩减的内容将数据插入目标数据库。
在 api 部分“从实时数据库中读取模型”是用于此操作的方法 platform.readModelFromDatabase(String),但我现在无法实例化平台对象,这让我无需大量调用该方法例外。
非常感谢阿尔夫
postgresql - Apache DdlUtils :: 如何获取自增键的序列名称?
我正在使用Apache DdlUtils查询 PostgreSQL 数据库以获取表和列元数据(最终目标是自动生成 javax.persistence 注释的实体 bean)。但是在我看来,DdlUtils库没有提供一种方法来获取自动增量列中使用的序列名称。Column类提供了一个isAutoIncrement方法来查询自动增量状态,但我找不到获取与其关联的序列名称的方法。这是 PostgreSQL 中 DDL 的一部分,例如:
我应该直接查询一些元数据/目录表来获取那部分信息吗?