Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL > Débuter
Débuter Forum d'entraide : Débuter en base de données avec 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 24/06/2011, 13h23   #1
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
Par défaut SELECT DANS INSERT INTO

bonjour,
je cherche à savoir s'il est possible de faire une requete comme celle-ci:
Code :
1
2
INSERT INTO ma_table(col_a,col_b,col_c)
VALUES("qq_chose", SELECT col_1,col_2 FROM matable2 WHERE condition)
Merci d'avance
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 13h46   #2
Membre Expert
 
Inscription : août 2008
Messages : 1 271
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 271
Points : 1 929
Points : 1 929
Comme ça :
Code :
1
2
INSERT INTO ma_table(col_a,col_b,col_c)
SELECT 'qq_chose',col_1,col_2 FROM matable2 WHERE condition
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 13h53   #3
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
Non,
j'aimerais que "qq_chose" soit associé à col_a et pour col_b et col_c, je leur associe le resultat de ma requete(ici le SELECT)
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 14h07   #4
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Citation:
Envoyé par koker92 Voir le message
Non,
j'aimerais que "qq_chose" soit associé à col_a et pour col_b et col_c, je leur associe le resultat de ma requete(ici le SELECT)
Exactement donc ce que @skuatamad te propose.
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 15h09   #5
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
Citation:
Envoyé par MaitrePylos Voir le message
Exactement donc ce que @skuatamad te propose.
Et ce même si qq_chose est en fait une variable php
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 15h18   #6
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Pas de souci

Code php :
1
2
3
4
5
6
 
 
$sql = "INSERT INTO ma_table(col_a,col_b,col_c)
SELECT ".$variable_PHP.",col_1,col_2 FROM matable2 WHERE condition";
 
pg_query($sql);
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/06/2011, 15h27   #7
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
Citation:
Envoyé par MaitrePylos Voir le message
Pas de souci

Code php :
1
2
3
4
5
6
 
 
$sql = "INSERT INTO ma_table(col_a,col_b,col_c)
SELECT ".$variable_PHP.",col_1,col_2 FROM matable2 WHERE condition";
 
pg_query($sql);
MERCI
ça a marché!
bonne fin de journée et bon week end

En fait Non!
j'ai vu que ça m'affichait plus d'erreurs donc j'ai cru que c'était bon, mais quand j'ai regardé dans la base, j'ai pas eu l'effet escompté
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 15h32   #8
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
VOICI MON CODE:
Code :
1
2
3
4
"INSERT INTO buildings(b_s_id, b_code, b_name, b_number, b_size, b_size_type, b_caption, b_creation_time, b_modification_time, b_floors, b_u_id, b_type, b_address)
SELECT ".$give_last_reg['s_id'].", b_code, b_name, b_number, b_size, b_size_type, b_caption, b_creation_time, b_modification_time, b_floors, b_u_id, b_type, b_address
FROM buildings
WHERE b_s_id='".$_POST["__site_id"]."'"
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 15h48   #9
Invité de passage
 
Homme
Développeur multimédia
Inscription : juin 2011
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur multimédia
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2011
Messages : 6
Points : 0
Points : 0
Citation:
Envoyé par koker92 Voir le message
VOICI MON CODE:
merci à tous pour vos explications
ça marche maintenant!
koker92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 17h18   #10
Modérateur
 
Inscription : octobre 2008
Messages : 1 508
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : octobre 2008
Messages : 1 508
Points : 2 040
Points : 2 040
Une remarque sur ce code: il ne faut pas mettre directement dans une requête SQL du contenu qui vient de l'extérieur, ici en l'occurrence la variable $_POST["__site_id"]
En php, il faut utiliser pg_escape_string($_POST["__site_id"]), sans quoi la requête se trouve sujette à toutes sortes d'injections SQL.
estofilo est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h50.


 
 
 
 
Partenaires

Hébergement Web