[英]Derby database export as a single file?
我正在制作一个小型应用程序,并且正在使用嵌入式 derby 数据库,我希望该应用程序能够将整个数据库保存到一个文件中,该文件可以存储在硬盘驱动器上,还可以通过在未来。关于我该怎么做的任何线索或例子?
这可能会帮助你!
1- 包含所有详细信息的资源 1
2- 仅具有导出详细信息的资源 2
将表中的所有数据导出到单个导出文件,包括 LOB 数据
SYSCS_UTIL。 SYSCS_EXPORT_TABLE (IN SCHEMANAME VARCHAR(128)、IN TABLENAME VARCHAR(128)、IN FILENAME VARCHAR(32672)、IN COLUMNDELIMITER CHAR(1)、IN CHARACTERDELIMITER CHAR(1)、IN CODESET VARCHAR(128))
将 SELECT 语句的结果导出到单个文件,包括 LOB 数据
SYSCS_UTIL。 SYSCS_EXPORT_QUERY (在SELECTSTATEMENT VARCHAR(32672) 中,在TABLENAME VARCHAR(128) 中,在FILENAME VARCHAR(32672) 中,在 COLUMNDELIMITER CHAR(1) 中,在 CHARACTERDELIMITER CHAR(1) 中,在 CODESET VARCHAR(128) 中)
从 JDBC 导入和导出过程
您可以从 JDBC 程序运行导入和导出过程。
以下代码片段显示了如何从 Java 调用SYSCS_UTIL.SYSCS_EXPORT_TABLE过程。 在此示例中,该过程将默认模式中的人员表中的数据导出到人员.dat 文件。 百分比 (%) 字符用于指定列分隔符。
PreparedStatement ps=conn.prepareStatement(
"CALL SYSCS_UTIL.SYSCS_EXPORT_TABLE (?,?,?,?,?,?)");
ps.setString(1,null);
ps.setString(2,"STAFF");
ps.setString(3,"staff.dat");
ps.setString(4,"%");
ps.setString(5,null);
ps.setString(6,null);
ps.execute();
你的问题让我想知道你是否认为你需要这样做来保存你的数据。 需要明确的是:您没有 - 您的数据会自动保存在磁盘上。 事实上,即使 jvm 或机器崩溃(只要磁盘完好无损并且磁盘的写入缓存已被禁用),所有已提交的插入和更新都可以保证被持久化。
D
由于您将 Derby 与嵌入式数据库一起使用,您应该意识到它将“数据库”存储在硬盘驱动器上的一个文件夹和一组文件中(假设它未配置为内存中嵌入式数据库)。
因此,您可以简单地将该文件夹复制/保存到其他地方并打开它。 如果您想要一个文件,那么您可以压缩包含 Derby 数据库的文件夹并移动它,等等。然后解压缩并正常访问它。
如果你真的需要一个单文件数据库,那么考虑使用 SQLite。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.