Bonjour,
Je travaille dans PostgreSQL. J'essaie de contrainte la clé primaire d'une table de toujours commencer par MET puis de garder le reste des caractères en tant qu'integer. Voici ma requête:
J'obtiens toujours cette erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 CREATE TABLE meta_test ( id_metadon_test character varying (14), nom character varying (64), CONSTRAINT meta_test_cast CHECK ( (substring(id_metadon_test from 1 for 3)='MET') AND (cast(substring(id_metadon_test from 4 for 4) as integer))), CONSTRAINT meta_test_pk PRIMARY KEY (id_metadon_test));Je ne vois pas où est mon erreur. Est-ce que quelqu'un pourrait m'aider à corriger ma requête svp?'ERREUR: l'argument de AND doit être de type booléen, et non du type integer
********** Error **********
ERREUR: l'argument de AND doit être de type booléen, et non du type integer
SQL state: 42804'
De plus, j'aimerais savoir s'il est possible de mettre le nouveau type de donnée "AS SERIAL" plutôt que INTEGER. Ce serait beaucoup plus pratique d'avoir un champ qui s'auto-incrémente, mais en commençant toujours par "MET".
Merci!
Partager