我有一个使用访问前端的数据库。用户要求更改在一列中输入的数据,以在Small INT(32,767)大小上包含更大的数字。如果我要将类型更改为Int,可能会有任何数据丢失或任何其他问题?
@Ste Willis,根据我的个人经验,除了创造更大的空间来保持更大的价值之外,它不应该有任何影响。所以它应该是有利的而不是其他的。 SQL Server INT数据类型是BIGINT,INT,SMALLINT,TINYINT
BIGINT -263 (-9,223,372,036,854,775,808) to 263-1 (9,223,372,036,854,775,807) 8 Bytes
INT -231 (-2,147,483,648) to 231-1 (2,147,483,647) 4 Bytes
SMALLINT -215 (-32,768) to 215-1 (32,767) 2 Bytes
TINYINT 0 to 255 1 Byte
这意味着int的大小远小于smallint(至少两倍大),因此从smallint更改为int不会让您丢失任何数据,而是为更多数据创造更多空间。
如果你要做相反的事情,比如从int到smallint,那么你可能会丢失数据。
我有待纠正。
由于两种数据类型都是相似的类型,因此您不会遇到任何问题。而且您正在从小型int更改为INT(更大数量的存储),因此不会丢失任何数据。