MySQL 迁移到 Oracle 需要注意的问题

MySQL /Oracle 常见问题

  1. VARCHAR/VARCHAR2/NVARCHAR 差异:

MySQL 的 VARCHAR 是以字符为单位计算的,Oracle 的 VARCHAR 是

以字节为单位计算的,所以对中文的存储 Oracle 是 MySQL 的 2 倍

(GBK)和 3 倍(UTF8)

  1. NULL 差异

A. MySQL 端的值为 NULL,对应 Oracle 的值也为 NULL

B. MySQL 端的值为'',即空串,对应 Oracle 的值也为 NULL

  1. ORA-01438:value larger than precision allowed for this column.

oracle 在遇到 number 类型的精度问题时,提供异常没有对应的字段信息,造成问题很难解决。

在Oracle中,null和''(空字符串)是一个意思。

mysql数据迁移入oracle,如果两端对应的字段都为not null,那么mysql该字段的空字符串的该行数据,无法写入到oracle,因为oracle把空字符当做null

相关推荐
知其然亦知其所以然2 小时前
MySQL 社招必考题:如何优化查询过程中的数据访问?
后端·mysql·面试
DemonAvenger4 小时前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
程序新视界4 小时前
如何在MySQL中创建聚集索引?
mysql
AAA修煤气灶刘哥15 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界16 小时前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RestCloud19 小时前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api
得物技术1 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
xiaok1 天前
mysql中怎么创建一个可控权限数据库账号密码给到开发者
mysql
ByteBlossom1 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
玉衡子1 天前
九、MySQL配置参数优化总结
java·mysql