sql - 如何在 SQL Developer 中删除脚本中的小数点
问题描述
我试图将大量数据从 Excel 加载到一个 Oracle 表中,所以我尝试使用 Oracle SQL Developer。
INSERT
它为 20,0000 条记录生成了一个脚本。但问题是我得到了带有小数的 NUMBER 值,如下所示:
INSERT INTO test_tb (FI_KEY, CL_KEY, ST_KEY, CL_NUMBER, YE, PA_NAME, RA_KEY, SH_KEY, B_NUMBER, FLAG, CREATED_BY, CREATED_DATE, ACTIVE_STATUS)
VALUES (691001.0, 1.0, 1.0, '387136', 2020.0, 'KUR', 370.0, 2221.0, 'J-12708', 'Y', 'admin', to_timestamp('03/11/2020', 'DD-MM-YY HH12:MI:SSXFF AM'), 'Y');
我想INSERT
为 NUMBER 值获取不带小数点的脚本。
注意:这些十进制值不会出现在 Excel 数据中,而只会出现在 INSERT 脚本中。
任何人面对这个或建议在 SQL 或 PL/SQL 中进行批量插入的任何其他方法?
解决方案
如果您要有效地从 Excel 加载大量数据,我建议将 Excel 的格式转换为 CSV 并使用sqlldr在那里您可以创建一个控制文件,您可以在其中调整数据并执行 TRUNC、ROUND 和条件处理。
推荐阅读
- python - ModuleNotFoundError:没有名为“unidecode”的模块,但我已安装该模块
- html - svg 文档中间的上下文菜单
- azure - Azure 数据工厂 sFTP 保持连接打开
- powershell - 如何递归搜索最近的活动经理
- java - oracle连接多个数据库
- symfony - 服务“admin.category”依赖于不存在的服务“sonata.admin.manager.orm”
- java - 无法在 Java 程序中执行 Oracle 包
- angular - 为什么 rxjs 在涉及操作符时会抱怨定义为 Type[] 的项目?
- parallel-processing - OpenMP 线程重生
- javascript - 推送通知适用于 Firefox,但不适用于 Chrome:未定义所需的成员标题