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 ???