Bonjour, je travail sur postgrsql et je n'arrive pas a changer une de mes colonnes en booleen. Voici mon code de creation de table puis de modification:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
CREATE TABLE competition (
 
	id SERIAL ,
	nom VARCHAR(50) NOT NULL ,
	dateDebut DATE , 
	dateFin DATE  ,
	formule VARCHAR(11) DEFAULT 'championnat' ,
 
	CONSTRAINT id_competition_unique PRIMARY KEY (id) ,
	CONSTRAINT verif_date_fin CHECK (dateFin > dateDebut) ,
	CONSTRAINT verif_formule CHECK (formule = 'championnat' OR formule = 'coupe')
 
);
 
/* MODIFICATION:*/
 
ALTER TABLE competition RENAME COLUMN formule TO competition_type;	
ALTER TABLE competition ALTER COLUMN competition_type DROP DEFAULT;
ALTER TABLE competition ALTER COLUMN competition_type TYPE boolean USING CASE WHEN competition_type = 1 THEN TRUE ELSE FALSE END;
ALTER TABLE competition ALTER COLUMN competition_type SET DEFAULT TRUE;
voici l'erreur qu'il me retourne:

psql:modification.sql:22: ERREUR: n'a pas puconvertir le type boolean en text

Merci pour votre aide