在用Powerbuilder完成开发工作的时候,在对处理数据长度不是很大的数值数据时,一般申明的变量类型都是integer,在sqlserver的后台程序中,只要不涉及到小数处理时,数值型变量一般也是申明为int. 如果数据库表里的数据超出(-32768 to 32767.)时,前台有用intger类型变量接收数据时, 那么此时,就会发生数据溢出。
造成以上问题的原因在于: powerbuilder integer 的范围为:(-32768 to 32767), 而sql server integer 的范围为: -2^31 (-2,147,483,648) through 2^31 - 1 (2,147,483,647) powerbuilder的integer相当于sql server 的samllint .
本文探讨了在使用PowerBuilder进行开发时,由于PowerBuilder与SQL Server中整数类型的范围不同而导致的数据溢出问题。PowerBuilder的integer类型范围为-32768至32767,而SQL Server的int类型范围更宽,从-2^31至2^31-1。当数据超出PowerBuilder integer类型范围时,可能会导致数据溢出。
4744

被折叠的 条评论
为什么被折叠?



