【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

相关推荐
老邓计算机毕设22 分钟前
SSM医疗资源普查6qxol(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb开发·医疗资源管理
dyyx11124 分钟前
如何从Python初学者进阶为专家?
jvm·数据库·python
码农水水39 分钟前
中国邮政Java面试被问:容器镜像的多阶段构建和优化
java·linux·开发语言·数据库·mysql·面试·php
曹牧44 分钟前
Oracle:NULL
数据库·oracle
龙之叶1 小时前
【Android Monkey源码解析五】- 异常处理
android·数据库
马克学长2 小时前
SSM医院门诊管理系统u4pw5(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb 开发·门诊管理
TDengine (老段)2 小时前
使用安装包快速体验 TDengine TSDB
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
闻哥3 小时前
Redis 避坑指南:从命令到主从的全链路踩坑实录
java·数据库·redis·缓存·面试·springboot
建群新人小猿4 小时前
陀螺匠企业助手—个人简历
android·大数据·开发语言·前端·数据库
小毅&Nora4 小时前
【后端】【Redis】② Redis事务管理全解:从“购物车结算“到“银行转账“,一文彻底掌握事务机制
数据库·redis·事务