Salut,
Tu as posté 2 fois le même message apparemment. Pourrais tu en supprimer un ?
1- j'ai une base de données dans postgresql et je voudrais créer 40 colonnes dans cette base de données.quel est le script sql qui me permet de faire ca?
Concernant les 40 colonnes (je pense que ce doit être 40 champs dans une table et non dans une base de données) que tu souhaites créer : il fraudrait savoir ce que tu compte y mettre. C'est à dire, mettre pour chacune d'entre elle un nom qui correspond et surtout pour ta table ajouter une clé primaire.
Sinon :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
CREATE TABLE matable
(
colonne1 character varying
)
ALTER TABLE matable ADD COLUMN colonne2 character varying;
ALTER TABLE matable ADD COLUMN colonne3 character varying;
ALTER TABLE matable ADD COLUMN colonne4 character varying;
ALTER TABLE matable ADD COLUMN colonne5 character varying;
ALTER TABLE matable ADD COLUMN colonne6 character varying;
ALTER TABLE matable ADD COLUMN colonne7 character varying;
ALTER TABLE matable ADD COLUMN colonne8 character varying;
ALTER TABLE matable ADD COLUMN colonne9 character varying;
ALTER TABLE matable ADD COLUMN colonne10 character varying;
ALTER TABLE matable ADD COLUMN colonne11 character varying;
ALTER TABLE matable ADD COLUMN colonne12 character varying;
ALTER TABLE matable ADD COLUMN colonne13 character varying;
ALTER TABLE matable ADD COLUMN colonne14 character varying;
ALTER TABLE matable ADD COLUMN colonne15 character varying;
ALTER TABLE matable ADD COLUMN colonne16 character varying;
ALTER TABLE matable ADD COLUMN colonne17 character varying;
ALTER TABLE matable ADD COLUMN colonne18 character varying;
ALTER TABLE matable ADD COLUMN colonne19 character varying;
ALTER TABLE matable ADD COLUMN colonne20 character varying;
ALTER TABLE matable ADD COLUMN colonne21 character varying;
ALTER TABLE matable ADD COLUMN colonne22 character varying;
ALTER TABLE matable ADD COLUMN colonne23 character varying;
ALTER TABLE matable ADD COLUMN colonne24 character varying;
ALTER TABLE matable ADD COLUMN colonne25 character varying;
ALTER TABLE matable ADD COLUMN colonne26 character varying;
ALTER TABLE matable ADD COLUMN colonne27 character varying;
ALTER TABLE matable ADD COLUMN colonne28 character varying;
ALTER TABLE matable ADD COLUMN colonne29 character varying;
ALTER TABLE matable ADD COLUMN colonne30 character varying;
ALTER TABLE matable ADD COLUMN colonne31 character varying;
ALTER TABLE matable ADD COLUMN colonne32 character varying;
ALTER TABLE matable ADD COLUMN colonne33 character varying;
ALTER TABLE matable ADD COLUMN colonne34 character varying;
ALTER TABLE matable ADD COLUMN colonne35 character varying;
ALTER TABLE matable ADD COLUMN colonne36 character varying;
ALTER TABLE matable ADD COLUMN colonne37 character varying;
ALTER TABLE matable ADD COLUMN colonne38 character varying;
ALTER TABLE matable ADD COLUMN colonne39 character varying;
ALTER TABLE matable ADD COLUMN colonne40 character varying; |
c'est un peu barbare non ???
2ème solution, avec une fonction :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| CREATE FUNCTION creationtable(nombrecolonne integer) RETURNS text AS $$
declare
sql text;
compteur integer;
begin
sql = 'CREATE TABLE matable(colonne1 character varying);\n';
compteur = 2;
WHILE compteur <= nombrecolonne LOOP
sql = sql || 'ALTER TABLE matable ADD COLUMN colonne'|| compteur ||' character varying;\n';
compteur = compteur +1;
END LOOP;
execute sql;
return sql;
end;
$$
LANGUAGE 'plpgsql'; |
puis tu lances la fonction en tapant :
select creationtable(40);
Toujours est il que ça reste très impropre !!
2-ma deuxieme question est:Comment rendre les lignes en des colonnes dans postgresql.
merci d'avance
Regarde : http://www.developpez.net/forums/sho...d.php?t=307334
Partager