Création de trigger depuis PHP
8 messages
• Page 1 sur 1
- Shivamoon
- Nouveau WRInaute

- Messages: 4
- Inscription: 10 Jan 2007
Création de trigger depuis PHP
Bonjour,
Je souhaite crée sur une table un trigger, j'y arrive très bien en passant par une console Mysql sous Linux mais rien à faire si j'essaie de le crée avec du PHP ex avec un truc dans ce genre :
Est-il seulement possible de le crée en console ?
Je souhaite crée sur une table un trigger, j'y arrive très bien en passant par une console Mysql sous Linux mais rien à faire si j'essaie de le crée avec du PHP ex avec un truc dans ce genre :
- Code: Tout sélectionner
$trigger = 'DELIMITER |
CREATE TRIGGER delete_customer AFTER DELETE ON osc_customers
FOR EACH ROW BEGIN
DELETE FROM db_net.osc_customers
WHERE customers_id = old.customers_id
AND IDC = 33;
END;|
DELIMITER ;';
mysql_query($trigger);
Est-il seulement possible de le crée en console ?
- fablezouave
- WRInaute discret

- Messages: 109
- Inscription: 20 Déc 2006
salut
Avec mysql_query(), tu ne peux pas envoyer plusieurs requètes (séparées donc par un point-virgule), il te faut les envoyer séparémment. De plus, l'extension mysql n'est pas faite pour être utilisée avec une base de donnée mysql >=5. Si tu le peux, utilise l'extension mysqli ou PDO
http://php.net/mysqli
http://php.net/pdo
fab
Avec mysql_query(), tu ne peux pas envoyer plusieurs requètes (séparées donc par un point-virgule), il te faut les envoyer séparémment. De plus, l'extension mysql n'est pas faite pour être utilisée avec une base de donnée mysql >=5. Si tu le peux, utilise l'extension mysqli ou PDO
http://php.net/mysqli
http://php.net/pdo
fab
- Shivamoon
- Nouveau WRInaute

- Messages: 4
- Inscription: 10 Jan 2007
En effet mysqli est la solution :
Merci bien de votre aide
- Code: Tout sélectionner
<?php
$link = mysqli_connect("192.168.1.1", "user", "pass", "db_bt_B740zp98wDPBU7Daa8BO");
if (mysqli_connect_errno()) {
echo mysqli_connect_error();
exit();
} else {
echo 'connexion reussie !<br>';
}
$query = 'CREATE TRIGGER delete_customer AFTER DELETE ON db_bt_B740zp98wDPBU7Daa8BO.osc_customers FOR EACH ROW
BEGIN
DELETE FROM db_net.osc_customers
WHERE customers_id = old.customers_id
AND IDC = 33;
END;';
$result = mysqli_query($link, $query);
echo mysqli_error($link);
mysqli_close($link);
?>
Merci bien de votre aide
- Shivamoon
- Nouveau WRInaute

- Messages: 4
- Inscription: 10 Jan 2007
C'est simple, j'ai une base maître et des bases esclaves. Je souhaite que quand dans ces dernières des données sont insérées, modifiées ou effacées, elles le soient aussi dans la base maître. J'utilise des trigers pour cela sur chacunes des tables des bases esclaves.
- fablezouave
- WRInaute discret

- Messages: 109
- Inscription: 20 Déc 2006
Un trigger (ou declencheur) est une action declenchée automatiquement suite à une autre. Pour un forum, par exemple, tu peux imaginer un trigger : lorsque un message est supprimé, un trigger est appellé et efface tous les messages enfants.
fab
fab
-

OJAL - WRInaute passionné

- Messages: 1178
- Inscription: 10 Avr 2003
fablezouave a écrit:Un trigger (ou declencheur) est une action declenchée automatiquement suite à une autre. Pour un forum, par exemple, tu peux imaginer un trigger : lorsque un message est supprimé, un trigger est appellé et efface tous les messages enfants.
fab
Merci fablezouave,
Ce que tu nous explique est en général codé dans le secript PHP par exemple... Qu'apporte de plus cette notion de Trigger...?
Scuses, j'ai du mal à comprendre...
- fablezouave
- WRInaute discret

- Messages: 109
- Inscription: 20 Déc 2006
OJAL a écrit:Ce que tu nous explique est en général codé dans le secript PHP par exemple... Qu'apporte de plus cette notion de Trigger...?
Scuses, j'ai du mal à comprendre...
* De ne pas avoir à le coder en PHP
* d'augmenter la rapidité d'exécution des scripts, le trigger est lancé comme tâche de fond
* facilité de maintenance
par exemple
8 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- La notion de Trigger ... ca existe dans mysql ?
- [PHP] Création de pagination de forum
- Création d'un tableau 3 colonnes en php ?
- Création d'un programme MySQL+PHP
- Création d'un gif animé en PHP ?
- [Script PHP] Création d'annuaires personnalisés
- [PHP] Création d'images (complexes) à la volée
- probleme creation fichier php sur serveur
- Nouveau script php/mysql GreenSD : création d'annuaire
- [PHP/MySQL/xHTML] Création et changement de page à une limite
- API Google Maps en Flash / Flex - 15-05-2008
- Optimiser son référencement sur Wikio - 10-04-2006
- Google rejoint le projet Open AJAX créé par IBM - 02-02-2006
- Deepfish - 29-03-2007
- Moteur de recherche de flux RSS / Atom - 02-05-2006
- Les blogs (Search Engine Strategies 2004 - San José) - 06-08-2004
- Google lance la page d'accueil personnalisée sur téléphones mobiles - 13-01-2006
- Transformer de simples citations en liens - 21-06-2006
Consultez la description détaillée des produits ou services de Google suivants : Google Website Optimizer
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
