numeric 和 int 的区别

sunhejun983 2007-11-27 01:21:59
表里有一个字段(数量),是一个5位整数,我应该使用numeric(5,0)呢,还是使用int呢

以前在用oracle数据库时,对于数值型,我们只使用numeric,sql server是不是也是这样呢

请大家给我解释一下,谢谢!
...全文
2467 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
stonegreen72 2008-12-27
  • 打赏
  • 举报
回复
powerDesigner的Serial自动设置为numeric
晓风残月0110 2007-11-27
  • 打赏
  • 举报
回复
t-sql 里的 int 相当于 pl_sql 里的numeric
因此使用int
-狙击手- 2007-11-27
  • 打赏
  • 举报
回复
用int
sunhejun983 2007-11-27
  • 打赏
  • 举报
回复
fcuandy 提到的这个区别,我们在数据库设计阶段好象都不考虑的,
这个在程序开发阶段才会考虑到,

而且似乎只用numeric就可以了
fcuandy 2007-11-27
  • 打赏
  • 举报
回复
int是整型
numeric是定点精度小数.
虽然numeric指定小数位为0时也能用来表示整型.但还是有区别的.

DECLARE @i INT,@k NUMERIC(5,0)
SELECT @i=1,@k=1
SELECT @i,@k,@i/3,@k/3


两个整型运算,结果仍为整型,
小数与整型运算,SQL会把精度低的操作数(这里int型精度低)转换为精度高的数据类型,得到的结果也是精度高的那个操作数的类型,但是结果不受精度高的那个操作数的小数位数限制,只受数据类型小数位的限制.

任何语言都相似.
fa_ge 2007-11-27
  • 打赏
  • 举报
回复
numeric(5,0)它是取整型,长度固定为5位
int 可以达到它最大允许范围

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧