从.sql和.unl文件导入Oracle是由Informix dbexport生成的

时间:2017-04-03 12:28:09

标签: database oracle migration informix

我从Informix数据库创建了一个dbexport,我有.sql.unl个文件。 我可以从文件中重新导出数据库到Oracle吗?

如果不可能,有没有可以做到的RDBMS?

1 个答案:

答案 0 :(得分:0)

正如乔纳森在评论中所说,这并不容易。由Informix dbexport创建的文件不能被其他数据库直接使用。但是,虽然这很容易阅读文本信息,但您可以编写将.sql.uml文件转换为可用于首选数据库的文件的程序。如果你使用存储过程,那真的很难。

对于CREATE TABLE ...中的表格定义,您必须将DATETIME YEAR TO DAY等Informix类型转换为DATE,或将SERIAL转换为INTEGER。 Oracle没有SERIAL类型,因此您必须为这些列创建序列和触发器。

转换数据库模式时,可以从.unl文件导入数据。我建议您编写自己的程序,将其作为CSV数据读取,使用INSERT生成PrepareStatement并转换一些数据。还要记住,Oracle不使用空字符串:null vs empty string in Oracle