0
J'ai une table avec un champ de type enum. J'exécute la requête suivante en utilisant pg_querypostgres enum insertion en utilisant pg_query
INSERT INTO users (email, facebook_id, first_name, middle_name, last_name, birth_date, password, gender, school_id, timezone, email_verified, role_id) VALUES ('[email protected]', NULL, 'Robert', '', 'George', '1984-05-20', 'Some password', 'MALE', 1, '0.0', false, 1);
pg_query($connection, 'INSERT INTO users (email, facebook_id, first_name, middle_name, last_name, birth_date, password, gender, school_id, timezone, email_verified, role_id) VALUES (\'[email protected]\', NULL, \'Robert\', \'\', \'George\', \'1984-05-20\', \'Some password\', \'MALE\', 1, \'0.0\', false, 1)')
mais j'obtiens une erreur comme ci-dessous.
PHP Warning: pg_query(): Query failed: ERROR: invalid input value for enum sex: "MALE" LINE 1: ...rt', '', 'George', '1984-05-20', 'Some password', 'MALE', 1,...
L'exécution directe de la requête dans le client postgres ne donne pas cette erreur. Quelle est la solution pour cela?
il n'y a pas de problème avec les cas ... je suis au courant de ce problème. Je suppose que je vais aller avec votre deuxième point .. faire une colonne int .. – robert
Désolé de ne pas être absolument constructif, j'ai partagé tout ce que je savais. – pestaa
PDO? Utilisez pg_query_params(), c'est tellement plus facile que PDO. PDO ressemble à un PITA par rapport à pg_query_params(). http://nl.php.net/pg_query_params –