par
Cyrano » 04 juin 2005, 08:26
En principe, on ne crée pas les tables "à la demande", on crée toutes les tables au départ même si elles sont toutes vides.
Mais ce que tu peux faire, c'est de lancer l'insertion et éventuellement de récupérer l'erreur qui sera retournée si la table n'existe pas. Exemple:
Retour si la table n'existe pas:
Après la requête d'insertion, tu fais un test sur le numéro d'erreur:
if(mysql_errno == 1146)
{
$nouvelle_table = "CREATE TABLE ...";
}
Et une fois que c'est fait tu relances l'insertion.
En principe, on ne crée pas les tables "à la demande", on crée toutes les tables au départ même si elles sont toutes vides.
Mais ce que tu peux faire, c'est de lancer l'insertion et éventuellement de récupérer l'erreur qui sera retournée si la table n'existe pas. Exemple:
[code] INSERT INTO xyz
VALUES (
'abc', 'def'
) [/code]
Retour si la table n'existe pas:
[code]#1146 - Table 'test.xyz' doesn't exist [/code]
Après la requête d'insertion, tu fais un test sur le numéro d'erreur:
[php]if(mysql_errno == 1146)
{
$nouvelle_table = "CREATE TABLE ...";
}[/php]
Et une fois que c'est fait tu relances l'insertion.