开发者

Why do values in the row I insert not match the values in the insert query?

I just can't understand why is my database (mysql) behaving like this! My console shows that the record is created properly (please, notice the "remote_id" value):

Tweet Create (0.3ms)

INSERT INTO `tweets` (`remote_id`, `text`, `user_id`, `twitter_account_id`)
              VALUES (12325438258, 'jamaica', 1, 1)

But when I check the record, it shows that the remote_id is 21474836开发者_Python百科47 intead of the provided value (12325438258 in the example above)...

This table has many entries, but this field is always written with 2147483647... It was supposed to fill this space with an unique id (which I guarantee you is being generated properly).


That's because you're using the INT numeric type which has a limit of '2147483647', use BIGINT instead.

Source: http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html


My guess is that the value you are trying to insert is too large for the column. That number is suspicious in that it is the max value of a 32 bit signed integer.

Is the column type INT? To store that value you should make it a BIGINT. See Numeric Types from the MySQL manual.


As it is obvious you used a value with less size, so you need to use a larger type like BigInt ( and in application use long or int64

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜