Une petite question sur une requete SQL - Programmation
Marsh Posté le 19-03-2001 à 15:15:21
insert into table1 
(select * from table 2) 
 
essaye ca
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
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
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!!!
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 ...
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.
Marsh Posté le 19-03-2001 à 18:05:21
je pige plus trop ce que tu veux faire mais  
bon, bonne chance qd meme
Marsh Posté le 20-03-2001 à 13:58:07
INSERT INTO Table1 ( Champ1, Champ2 ) 
SELECT champ1bis, champ2bis 
FROM Table2 
 
ça devrai marcher ça....
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
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 ???