oracle11g – oracle词典视图中数字和整数数据类型之间的差异
发布时间:2020-12-12 14:15:28 所属栏目:百科 来源:网络整理
导读:我使用oracle字典视图来找出两个模式之间的列差异。在同步数据类型差异时,我发现NUMBER和INTEGER数据类型存储在all_tab_columns / user_tab_columns / dba_tab_columns中只有NUMBER,所以很难同步数据类型差异,其中一个模式/列有数据类型,另一个模式/列具
我使用oracle字典视图来找出两个模式之间的列差异。在同步数据类型差异时,我发现NUMBER和INTEGER数据类型存储在all_tab_columns / user_tab_columns / dba_tab_columns中只有NUMBER,所以很难同步数据类型差异,其中一个模式/列有数据类型,另一个模式/列具有整数数据类型。
虽然模式的比较显示数据类型不匹配。请使用字典视图建议是否有任何其他替代形式,或者字典视图中的任何特定属性可用于标识数据类型是否为整数。 整数只存在于sql标准,即Oracle不推荐使用。你应该使用Number代替。 整数在Oracle后面被存储为Number。 最常见的是,当int存储为ID,并且它们没有参数定义 – 所以在理论上,你可以看看元数据视图的规模和精度列,看到没有十进制值可以存储 – 但99%的时间这个不会帮助。 如上所述,您可以查找数(38,0)列或类似(即不允许小数点的列),但这只会告诉你哪些列不能取小数,而不是定义了哪些列,以便INTS可以存储。 建议: select max( case when trunc(column_name,0)=column_name then 0 else 1 end ) as has_dec_vals from table_name (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |