Как сохранить BIGINT в MySQL с помощью PDO?

Я знаю, что этот вопрос задавался здесь не раз, но я не мог найти решение.

Мы используем базу данных, в которой мы храним идентификатор facebook как BIGINT (20 ).

create table users(
     fb_id bigint(20) NOT NULL,
     user_name varchar(30) NOT NULL,
     CONSTRAINT uk_name unique (user_name), 
     CONSTRAINT pk_fb_id primary key (fb_id)
)ENGINE=INNODB;

Но механизм PDO PHP может вставлять только максимальное целочисленное значение PHP, то есть 2147483647.

$stmt->bindParam(':fb_id', $this->fb_id, PDO::PARAM_INT);

Это, как я понимаю, совершенно очевидно, так как мы ограничены максимальным значением целого числа в PHP. Я пытался использовать строку-

$stmt->bindParam(':fb_id', $this->fb_id, PDO::PARAM_STR);

но все равно не работает.

Я хочу знать, может ли быть обходной путь, чтобы сохранить его как bigint.

6
задан banskt 15 August 2012 в 10:23
поделиться