Varchar issue on Mysql 2147483647

2020-04-11 09:54发布

问题:

Having the 2147483647 MYSQL issue.

When inserting an 11 digit number in the telephone field i am getting this number in return saved in the DB: 2147483647

TEL is set as VARCHAR not INT tough.

Also, on a database hosted on SERVER 1 i have the same exact database table and not having the same issue tough?! what might be?

This is the SQL and PHP

tel_no  varchar(20) utf8_general_ci  Yes    NULL
mob_no  varchar(20) utf8_general_ci  Yes    NULL

That's the MYSQL. Yes i am inserting an 11 digit number as string in the DB

$telno = GetValue($post['tel_no']);
$mobno = GetValue($post['mob_no']); 

$sql = "UPDATE ".$this->dbpre."bookings SET tel_no='$telno', mob_no='$mobno'...

Can you please help? I am getting crazy!

回答1:

2147483647 is the largest int value for mysql. Just change the type from int to bigint.



回答2:

Check Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT and answer



回答3:

solution : just change the type from int to bigint or varchar to bigint.



标签: mysql varchar