Une petite question sur une requete SQL

Une petite question sur une requete SQL - Programmation

Marsh Posté le 19-03-2001 à 15:12:31    

Voila je voudrais simplement copier la totalité des champs d'une table dans les champs correspondant d'une autre table. Est-ce possible ???

Reply

Marsh Posté le 19-03-2001 à 15:12:31   

Reply

Marsh Posté le 19-03-2001 à 15:15:21    

insert into table1
(select * from table 2)
 
essaye ca


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 19-03-2001 à 17:00:58    

Merci pour ton aide mais ca ne marche pas..., a mon avis ca doit pas etre loin...
en gros ce que je j ai c
-table1 :
val 1
val 2
-table2 :
val 1
val 2
val 3
 
Ce serait de copier val1 et val2 du tableau 1 dans le tableau 2
(a savoir que la base compte a peut pret 100 champs)
Donc si c possible quel est la soluce ???
merci d 'avance

Reply

Marsh Posté le 19-03-2001 à 17:11:37    

insert into table2
(select val1,val2,def from table 1)  
 
def étant une valeur fixe qui sera mise par défaut


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 19-03-2001 à 17:44:37    

Oui mais le prob c que j ai 100 champs diff donc y a t-il une methode pour automatise ca, car moi j ai trouve ca :
 
$requete = "SELECT * FROM test1";
$result=mysql_query($requete);
$arr=mysql_fetch_row($result);
$nbr=mysql_num_fields($result);
for ($i=0;$i<$nbr;$i++)
{
$nom[$i]=mysql_field_name($result,$i);
$req="SELECT $nom[$i] FROM test1";
$res=mysql_query($req);
$arr=mysql_fetch_row($res);
$val[$i]=$arr[0];
}
for ($i=0;$i<$nbr;$i++)
      {
      $req="INSERT INTO test2 ($nom[$i]) VALUES ('$val[$i]')";
      $res=mysql_query($req);
      }
 
mais le prob est qu'il cree une nouvelle ligne pour chaque chmp...
 
En tout cas c cool d etre aide!!!

Reply

Marsh Posté le 19-03-2001 à 17:47:00    

cela dépend :
 
Les tables sont elles identiques ??
 
Si non, comment se situes les champs dans les deux tables.
 
etc ...


---------------
La bave du crapaud n'empèche pas la caravane de passer .
Reply

Marsh Posté le 19-03-2001 à 17:49:58    

nan justement les 2 tables sont pas identique et ne se situe même pas au même endroit, mais j ai peut etre une solution avec une fonction genre mysql_field_seek ou autre chose...
Parce que ma fonction marche mais ne met pas tous dans le même champ (il en rajoute un a chaque fois..)
Je continu mes recherche et si je trouve je vous fais signe
En tout cas merci.

Reply

Marsh Posté le 19-03-2001 à 18:05:21    

je pige plus trop ce que tu veux faire mais  
bon, bonne chance qd meme


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 20-03-2001 à 13:58:07    

INSERT INTO Table1 ( Champ1, Champ2 )
SELECT champ1bis, champ2bis
FROM Table2
 
ça devrai marcher ça....

Reply

Marsh Posté le 20-03-2001 à 17:52:28    

j ai trouve la solution il fallait juste que j'utilise UPDATE au lieu de insert et mon prog marche, en tout cas merci de votre aide

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed