Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/11/2004, 21h00   #1
Membre régulier
 
Inscription : avril 2002
Messages : 182
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 182
Points : 76
Points : 76
Par défaut probleme requete

J'ai un message d'erreur avec cette requete :

Code :
1
2
3
DROP TABLE Matieres 
WHERE 
EXISTS(SELECT table_name FROM information_schema.TABLES WHERE table_schema='public' AND table_name = 'matieres') ;
voyageur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h11   #2
Membre Expert
 
Avatar de David Guillot
 
Homme David Guillot
Chef de projet en SSII
Inscription : mars 2004
Messages : 879
Détails du profil
Informations personnelles :
Nom : Homme David Guillot
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mars 2004
Messages : 879
Points : 1 149
Points : 1 149
la requete DROP TABLE ne prend pas de condition ! http://sql.developpez.com/sqlaz/ddl/?page=partie2#L7.6
__________________
Avant de poser une question ici :

Après résolution de votre question : un clic sur , un et un vote pour les personnes qui vous ont aidé
David Guillot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h12   #3
Membre régulier
 
Inscription : avril 2002
Messages : 182
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 182
Points : 76
Points : 76
ok , il y aurait il une solution ?
voyageur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h22   #4
Membre Expert
 
Avatar de David Guillot
 
Homme David Guillot
Chef de projet en SSII
Inscription : mars 2004
Messages : 879
Détails du profil
Informations personnelles :
Nom : Homme David Guillot
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mars 2004
Messages : 879
Points : 1 149
Points : 1 149
ben que veux-tu faire à part supprimer cette table Matieres ? car fonctionne tres bien, comme l'indique le lien que je t'ai donné
__________________
Avant de poser une question ici :

Après résolution de votre question : un clic sur , un et un vote pour les personnes qui vous ont aidé
David Guillot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h29   #5
Membre régulier
 
Inscription : avril 2002
Messages : 182
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 182
Points : 76
Points : 76
En fait comme je travaille sur php si je fais drop table matieres et que cette table n'existe pas ca va me donner une erreur , je veux donc faire un petit test avant pour m'assurer qu'elle existe .
En sql server il y avait :
Code :
IF EXISTS(requete) DROP TABLE matieres ;
voyageur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h36   #6
Membre Expert
 
Avatar de David Guillot
 
Homme David Guillot
Chef de projet en SSII
Inscription : mars 2004
Messages : 879
Détails du profil
Informations personnelles :
Nom : Homme David Guillot
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mars 2004
Messages : 879
Points : 1 149
Points : 1 149
ben tu balances ta requete DROP TABLE Matieres; avec un @ pour eviter l'affichage des messages d'erreurs :
Code :
@pgsql_query("DROP TABLE Matieres");
à part ça je vois pas... car autrement l'autre solution est bien sûr de le faire en 2 requetes, mais je ne pense pas que ça t'interesse, sinon tu l'aurais fait depuis longtemps...
__________________
Avant de poser une question ici :

Après résolution de votre question : un clic sur , un et un vote pour les personnes qui vous ont aidé
David Guillot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2004, 21h43   #7
Membre émérite
 
Avatar de hpalpha
 
Inscription : mars 2002
Messages : 770
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 770
Points : 833
Points : 833
Essaye une petite procedure stockée ...

Code :
1
2
3
4
5
6
7
8
9
CREATE OR REPLACE FUNCTION "dropmatiere()" RETURNS void  RETURNS  AS'
BEGIN
 
 if exists(SELECT table_name FROM information_schema.tables WHERE table_schema=''public'' and table_name = ''matieres'') then
DROP TABLE Matieres;
 end if;
 RETURN NULL;
END;
'LANGUAGE 'plpgsql';
hpalpha est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h13.


 
 
 
 
Partenaires

Hébergement Web