oracle - 使用 Toad 在 PL/SQL 中进行数据迁移
问题描述
我是 PL/SQL 的初学者,我必须使用它进行数据迁移。
我们正在建立一个新的人力资源管理系统。所以,我们想要:
- 提取旧系统的所有数据
- 用 PL/SQL 编辑它
- 将其导出为 XML 文件(之后另一个团队会将 XML 文件加载到新系统中)
我们必须编辑列名、列类型、员工 ID 等,以使所有数据都适合新系统。
谁能解释我这样做的步骤,给我看链接或类似的例子。
解决方案
这个答案请记住,您正在使用 oracle 数据库来提取数据并创建 xml 文件
要从数据库表中提取数据到 xml,您有几个选项
- 使用 Sql
例子:-
SELECT XMLElement( "DEPARTMENT" , department_name ) FROM departments WHERE department_id IN (10, 20);
输出
<DEPARTMENT>Administration</DEPARTMENT> <DEPARTMENT>Marketing</DEPARTMENT>
2.使用PLSQL
- 使用 plsql XMLTYPE 构造函数
- 使用 DBMS_XMLGEN 包
- 使用 dbms_xmldom 包
使用 XMLTYPE 构造函数和 DBMS_XMLGEN 包,您可以快速轻松地创建简单的 XML 文档。当您需要创建更高级的 XML 文档或想要更好地控制 XML 文档的外观时,可以使用 DBMS_XMLDOM。DBMS_XMLDOM 包有点复杂,因为您必须通过调用包的函数和过程来创建整个文档。
参考以下2篇文章
从 SQL 和 PL/SQL 生成 XML – 第 1 部分
从 SQL 和 PL/SQL 生成 XML – 第 2 部分
要将 xml 写入文件,您可以使用
如果您使用 sql 生成Oracle Spool
xml UTL_FILE包,如果您使用 plsql 生成 xml
推荐阅读
- python-3.x - 通过 tweepy 在 twitter 上搜索很多关键词
- php - 如何在数组内的对象内循环对象?
- python - 为什么我们在 python 中使用与命名元组的类型名称相同的变量名称?
- arrays - Jq - 从不同的键打印一行值
- git - Git Rebase 导致重复代码审查?
- python - 将 pickle 用于不和谐机器人时出错 | 不和谐.py
- google-apps-script - Google 幻灯片 API (Slides.Presentations) 未通过 Google Apps 脚本定义
- microk8s - 使用 kfp.Client python api 将管道提交到 microk8s.kubeflow
- c# - Mysql Server 在添加 ADO.net [ASP.net API] 时停止
- java - 通知中的Android条件PendingIntent?