C'est possible de le faire en SQL, mais il y a quelque chose a deviner pour le contenu du champs.
En general on fait:
Insert into table1
(champs1, champs2, champs3 )
select ch1, ch2, ch3
from table2
Table1 est la destination.
Champs1 - Champsx sont les noms des champs du table1 a remplir.
ch1 - chx sont les noms des champs du table2, qu'on utilise pour supplier les valeurs. Ce champs peuvent avoir la meme ou une autre nom.
Table2 est la source.
Ca marche quand la definition des champs en create table est la meme.
Si non, on peut changer la type par cast(champs as newtype) et newtype est BINARY[(N)], CHAR[(N)], DATE, DATETIME, DECIMAL[(M[,D])], SIGNED [INTEGER], TIME ou UNSIGNED [INTEGER]. Normalement ces conversations ne sont pas necessaire entre les types pour nombres.
Quand il y a trop de champs dans la source, ca ne pose pas une probleme. On n'utilise simplement pas dans la liste des champs du table de source.
Si il y a plus de champs dans le table de destination, alors il y a deux possibilitees:
Il y a une specification default pour le champs (voir create table): alors il faut rien faire. On laisse le champs hors la liste du champs de destination.
Autrement on doivent supplier une valeur fixe au position du champs dans la liste de champs de source.
example:
INSERT INTO table1
(champs1, champs2, champs3 )
SELECT ch1, 5, 'texte pour champs3'
FROM table2
C'est aussi possible de faire de calcule pour obtenir des valeurs comme ch4 + ch6 / 2 ou meme IF(ch7 > 2, 2, ch7) pour convertir ch7 vers le maximum de 2.
Maitenant au travail:
bb_forums vers bbex_forums
INSERT INTO bbex_forums (
forum_id,
forum_name,
forum_desc,
forum_topics,
forum_posts,
forum_last_post_id,
cat_id,
forum_type,
allow_html,
allow_sig,
hot_threshold
)
SELECT
forum_id,
forum_name,
forum_desc,
forum_topics,
forum_posts,
forum_last_post_id,
cat_id,
forum_type,
allow_html,
allow_sig,
hot_threshold
FROM bb_forums
Note:
forum_access a une default.
forum_moderator est tout a fait differente, mais je crois c'est facile a remplir par le module admin, car le nombre des fora est limitee.
posts_per_page, topics_per_page, show_name, show_icons_panel, show_smilies_panel ont une default
Bon courage!