看数据库中的字段的设计,一般设置为数值即可保存负值,也可以用文字段保存,取出后自行转换成数字即可。
公司主营业务:成都做网站、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出博兴免费做网站回馈大家。
FLOAT或者DOUBLE都可以
补充:
类型肯定是这样的,可能是你的数据文件格式不对,你可以在记事本里面看一看,是否以TAB进行字段之间的分隔,另外可以考虑把“-.”替换为“-0.”
CREATE PROCEDURE testproc (IN v_i integer )
BEGIN
if v_i 0 then
select v_i as '负数';
else
select v_i as '正数';
end if;
END$$
delimiter ;
是nid的值超过int(11)的最大值了\
是超出了,mysql中int型数据的最大值是2147483647, 要想保存这么大的数据必须将数据类型改成改成bigint
以下参考
bigint
从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。
int
从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。
smallint
从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。
tinyint
从 0 到 255 的整型数据。存储大小为 1 字节。
mysql中是没有number数据类型的,对应的是int(整型)或者float(浮点型)等。
只要建表时没有选择unsigned(无符号型)选项,那么就是可以填入负数的。
如果表已经建好了,只需
ALTER
TABLE
指令将对应字段属性更改即可,参考SQL:
ALTER
TABLE
`user`
CHANGE
`regdate`
`regdate`
INT(
10
)
NOT
NULL
DEFAULT
'0'
mysql判断一行是否存在负数?可以。调用mysql的存储过程传参给smallint类型变量,总是出现out of range value的错误,刚开始用C数值转换方式的二进制位转换思...