我想使远程Oracle数据库的子集可以脱机使用。Oracle数据库大量使用了过程、函数和触发器,我需要在本地副本中提供此功能。更好地在离线数据库管理(例如Sqlite或MySql)中转换到db管理系统将涉及到大量的更改。
简而言之,我需要创建的工作流如下:
不打算向远程主机提交本地更改。
有人能想出办法来实现这一点吗?
发布于 2016-02-01 23:04:43
哇,
这是个充满负担的问题。我可以想出多种方法来做到这一点。
您可以使用UTL_FILE和DBMS_METADATA创建您所需的全部内容,以遵循以下问题的步骤:如何使用SQL命令文件创建SQLite3数据库文件?
您可以使用UTL_FILE创建CSV数据,并使用其他方法导入数据。
您可以使用DBMS_LOB手动为SqlLite3或MySql创建"CREATE DATABASE“脚本,并使用一些外部方法获取数据(例如ORDS)。
但是,如果您需要从头创建DB (而不是删除和插入),那么您需要使用DBMS_METADATA和一些脚本来保存数据。
例如,询问Toms:动态创建Insert语句
最后,在用户机器上设置Oracle,从Oracle安装类似SQL的SQL客户端(免费),并使用EXP或DataPump创建导出以自动导入到客户端机器。
问候奥利
https://stackoverflow.com/questions/35141967
复制相似问题