Oracle与GBase 8s数据类型对比-Number类型

Oracle数据库NUMBER(precision,scale)

  • precision表示数字中的有效位,从左边第一个不为0的数算起,小数点和负号不计入有效位数;scale表示精确到多少位,指精确到小数点左边或右边多少位(±决定)。
  • 如果没有指定precision的话,Oracle将使用38作为精度;
  • 如果scale大于零,表示数字精确到小数点右边的位数;
  • scale默认设置为0;
  • 如果scale小于零,Oracle将把该数字取舍到小数点左边的指定位数;
  • Precision的取值范围为1至38,Scale的取值范围为-84至127;
  • NUMBER整数部分允许的长度为(precision - scale),无论scale是正数还是负数;
  • 如果precision小于scale,表示存储的是没有整数的小数。

根据实际的p,s值,number数据类型映射到GBase 8s上的多个数据类型。

oracle数据类型GBase 8s数据类型示例说明
NUMBER
NUMBER(*,0)
DECIMAL(32)1234567890精度范围内为整数;超出精度则截取,保留32位精度
NUMBER(p ) (p<5)
NUMBER(p,s) (p<5且s<=0)
SMALLINT1234小于5位为小整型
NUMBER(p ) (p<9)
NUMBER(p,s) (p-s<9且s<=0)
INTEGER12345678小于9位为整型
NUMBER(p ) (9<=p<19)
NUMBER(p,s) (9<=p-s<19且s<=0)
BIGINT123456789012345678不小于9位且小于19位为大整型
NUMBER(p,s) (p>=s且0<s<=38)DECIMAL(min(p,32),min(s,26))12345678910.123456789含有整数及小数部分,可能损失刻度
NUMBER(p,s) (p<s且s>0)DECIMAL(min(s,32),min(s,32))0.123456789只有小数部分,可能损失刻度
NUMBER(p,s) (19<=p-s<=32且s<0)DECIMAL(min(p,32))1234567890123456789000精度范围内为整数;超出精度则截取,保留32位精度
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
gbase8s 是一个高性能的分布式关系型数据库,而MySQL则是一个常用的关系型数据库管理系统。将数据gbase8s迁移到MySQL可以通过以下几个步骤完成。 首先,我们需要创建一个MySQL数据库,确保其具备与gbase8s相同的表结构。可以通过使用CREATE TABLE语句在MySQL中创建相应的表,注意确保表结构和列的数据类型gbase8s中的表一致。 接下来,我们需要将gbase8s中的数据导出为SQL文件。可以使用导出工具,如mysqldump或SELECT INTO OUTFILE语句来完成此操作。导出的SQL文件包含了从gbase8s表中提取数据的语句。 然后,我们可以将导出的SQL文件导入到MySQL数据库中。可以使用MySQL的命令行工具或者图形化界面工具,如MySQL Workbench来执行导入操作。将SQL文件导入到MySQL后,即可将数据插入到对应的表中。 在数据迁移过程中,需要注意一些数据类型和语法的差异。例如,某些数据类型gbase8s中可能与MySQL中不完全相同,此时需要进行相应的转换或调整。此外,还需要注意主键、索引、约束等方面的差异,以确保数据的完整性和一致性。 最后,进行数据迁移后,建议对新迁移的数据进行验证和测试,以确保数据迁移的准确性和完整性。 综上所述,在迁移gbase8s数据到MySQL时,我们需要创建MySQL数据库,导出gbase8s中的数据为SQL文件,然后将SQL文件导入到MySQL数据库中,并进行必要的数据类型和语法转换。最后,验证和测试迁移后的数据

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值