J'essaie de créer un code MySQL qui invoquera un programme Java à partir d'un déclencheur.
Voici ce que j'ai jusqu'à présent: p> le contenu de la gâchette appellerait alors le programme Java. Est-ce possible? P> p>
3 Réponses :
appeler une méthode Java à partir d'une base de données SQL n'est pas une fonctionnalité standard. L'INFORMIX DB peut appeler un script Shell à partir d'une procédure stockée, mais je ne connais pas une fonctionnalité comme celle-ci dans MySQL (je ne suis pas un expert sur MySQL).
La chose la plus proche qui fonctionne avec toutes les bases de données serait d'avoir un thread et de sonder périodiquement la base de données pour les nouveaux enregistrements. p> ou vous pouvez utiliser un horodatage: p> Dans ce cas, vous devrez filtrer des lignes dupliquées qui ont déjà été chargées à partir de la course précédente. P> P>
lien ...is cela possible dans mysql @staquette
@XYZ: Non, ce n'est pas possible. MySQL ne prend pas en charge d'autres langues pour les déclencheurs et les procédures. Et cela ne vous aiderait pas non plus comme la gâchette exécute sur le serveur de base de données et ne pourra pas "appeler" votre programme Swing (qui fonctionne sur une machine complètement différente)
Réponse directe: Non, vous ne pouvez pas appeler une méthode Java à partir d'un déclencheur MySQL. Si vous avez eu une base de données Oracle, vous pourriez, mais pas MySQL. p>
Pour faire ce que vous voulez faire avec MySQL, vous pouvez P>
Bien qu'une fonctionnalité standard ne soit pas très bien possible avec MySQL. Vous pouvez utiliser la sélection SELECT .. dans l'instruction OUTFILE de l'intérieur de la gâchette pour écrire sur une tuyau nommée (Windows) ou un système de fichiers MEMROY (Linux). Les deux peuvent facilement être surveillés à partir du code Java (ou de tout autre code à ce sujet). En utilisant cette technique, vous éviterez le sondage et car aucun accès réel sur disque n'a lieu, vous aurez de bonnes performances. P>
J'ai écrit un package Java pour cela, donc je suis sûr que c'est sûr qu'il soit possible et performant bien. Malheureusement, je ne suis pas autorisé à partager mes efforts ici (ma réponse précédente a été supprimée par un modérateur) pour que vous puissiez la coder vous-même, désolé. P>
Vous devez lire et essayer 1) Tutoriel Swing 2) Accès à la base de données JDBC 3) Tutorial MySQL / Exemples
S'il vous plaît voir ma réponse pour un exemple de travail