【YashanDB知识库】同样建表语句,大整型数字在Oracle插入成功,在YashanDB插入失败

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7610113.html?templateId=1718516

问题现象

在YashanDB上执行Oracle同样的建表语句,插入同样的数据,包含大的整型数字,在Oracle执行成功,在YashanDB执行失败,报错SQL错误 [13] [22000]: [line: 0 column: 0] YAS-00013 value is larger than INTEGER allowed,是怎么回事?

问题的风险及影响

大整型数字插入

问题影响的版本

YashanDB版本:所有版本

解决方法及规避方式

1、原因核查

正常int类型取值范围是-231 (-2,147,483,648) ~ 231 - 1 (2,147,483,647)

YashanDB的设计规格是符合此常规的:

数据类型规格 | YashanDB Doc

问题中的整型数字有16位,已经远超了int类型的最大值。核查Oracle中表的定义,发现实际建表语句发生变更:

核查Oracle资料,可知在Oracle数据库中,整数类型通常使用的数据类型是NUMBER,INT不是Oracle的标准数据类型,有些开发工具会将其映射为NUMBER

2、解决方法

修改字段为Number或Bigint

相关推荐
极限实验室2 小时前
Easysearch 磁盘水位线注意事项
数据库
月落星还在2 小时前
Redis 单线程架构:化繁为简的性能哲学
数据库·redis·架构
十五年专注C++开发2 小时前
SQLiteStudio:一款免费开源跨平台的SQLite管理工具
数据库·c++·qt·sqlite
啥都想学的又啥都不会的研究生3 小时前
Redis设计与实现-服务器中的数据库
运维·服务器·数据库·redis·笔记·缓存·性能优化
m0_748229993 小时前
redis 使用
数据库·redis·缓存
Foolforuuu3 小时前
什么样的场景适用redis?redis缓存是什么?
数据库·redis·缓存
m0_748234083 小时前
redis 清理缓存
数据库·redis·缓存
智享AI3 小时前
阿里云工作空间与Ollama(一)
数据库·阿里云·云计算
聆风吟º3 小时前
阿里云操作系统控制台实战评测:提升云资源管理与监控效率
数据库·阿里云·云计算
小馒头学python3 小时前
【阿里云】操作系统控制台——体验与测评
数据库·redis·阿里云