Queries in einer DB ablegen

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Queries in einer DB ablegen

Postby mcshadow » 22. February 2008 11:35

Hallo Leute,

ich knobel im Moment an einer Idee, bei der ich nicht weiterkomme, weil ich nicht genau weiss, wonach ich suchen soll. Ich möchte gerne ein paar Abfragen in einer dafür vorgesehenen Tabelle ablegen und diese mit möglichst wenig Aufwand an MySQL übergeben.

Prizipiell stelle ich mir das so vor: eine Tabelle mit 2 Spalten - z.B. PK und Text. In Text steht dann ne Select-Anweisung. Per php startet ich ein query alla
Code: Select all
SELECT Text FROM Tablle WHERE id = 5
--> dann soll MySQL die dort gespeicherte Anweisung ausführen und mir das result liefern, ohne das das erste query als result zurück kommt, ausgewertet und als neues query an MySQL geschickt werden muss.

Ist das denn überhaupt möglich? Ich weiss, das z.B. PHPMyAdmin etwas ähnliches macht (pma_bookmark), weiss aber nicht wie das umgesetzt wurde.

Vieleicht hat ja jemand einen Tipp wonach ich suchen muss, um mir eine Lösung zu erarbeiten.

Für entsprechende Tipps bin ich dankbar.
mcshadow
 
Posts: 3
Joined: 22. February 2008 11:10

Postby Scory » 22. February 2008 12:01

>Ist das denn überhaupt möglich?

Nein.

>Ich weiss, das z.B. PHPMyAdmin etwas ähnliches macht (pma_bookmark)

Woher "weisst" Du das?

>weiss aber nicht wie das umgesetzt wurde.

Eben. Wüßte ich auch nicht.

Schau doch in den Quellcode von PhpMyAdmin - da müßt man ja so etwas finden. Irgendwer und irgendwie muss das Select doch ausgeführt werden - wie soll das "von alleine" denn gehen?
Scory
 

Postby mcshadow » 22. February 2008 14:47

>Ich weiss, das z.B. PHPMyAdmin etwas ähnliches macht (pma_bookmark)

Woher "weisst" Du das?

Formuliere ich mal etwas anders: Ich vermute das PHPMyAdmin etwas "ähnliches" macht, da ich eine DB phpmyadmin gefunden habe die die Tabelle pma_bookmark enthält, in welcher SQL-Anweisungen hinterlegt sind, die ich mal gespeichert habe.

>Ist das denn überhaupt möglich?

Nein.

Warum nicht? MySQL unterstützt z.B. Trigger Ich zitiere mal Wiki: Bei einer bestimmten Art der Änderungen (z. B. INSERT, UPDATE, DELETE bei SQL) von Daten in einer Tabelle wird ein gespeichertes Programm aufgerufen, das diese Änderung erlaubt, verhindert und/oder weitere Tätigkeiten vornimmt.

Vieleicht ist ein Trigger schon die Anwort aber das weiß ich eben nicht genau, deshalb frage ich ja. Möglicherweise gibts andere Funktionalitäten in MySQL (die auf SELECT reagieren) mit denen ich meine Idee unsetzen kann/könnte, die Frage ist nur welche?
mcshadow
 
Posts: 3
Joined: 22. February 2008 11:10

Postby Wiedmann » 22. February 2008 15:28

Ich vermute das PHPMyAdmin etwas "ähnliches" macht, da ich eine DB phpmyadmin gefunden habe die die Tabelle pma_bookmark enthält, in welcher SQL-Anweisungen hinterlegt sind, die ich mal gespeichert habe.

Allerdings genau so, wie du es nicht haben willst:
mcshadow wrote:ohne das das erste query als result zurück kommt, ausgewertet und als neues query an MySQL geschickt werden muss.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby sari42 » 22. February 2008 19:32

Last edited by sari42 on 26. February 2008 10:47, edited 1 time in total.
sari42
 
Posts: 800
Joined: 27. November 2005 18:28

Postby Scory » 22. February 2008 20:49

>Möglicherweise gibts andere Funktionalitäten in MySQL (die auf SELECT reagieren) mit denen ich meine Idee unsetzen kann/könnte, die Frage ist nur welche?

Da wir Deine "Idee" nicht kennen, können wir das auch nicht beantworten. Sicher ist nur, dass das, was Du hier vorgestellt hast, nicht funktionieren kann.

Ein Trigger ist nichts anderes als ein Automatismus, dass auf bestimmte Veränderungen von Werten in einer Tabelle/Spalte eine Select-Anweisung automatisch ausgelöst wird. Das hat aber nur sehr wenig Ähnlichkeit mit dem, was Du Dir ausgedacht hast.
Scory
 

Postby mcshadow » 26. February 2008 08:26

sari42 wrote:suchtst Du vielleicht http://dev.mysql.com/tech-resources/art ... dures.html ?


Ja genau, das ist vieleicht der Tipp, den ich brauchte. THX
mcshadow
 
Posts: 3
Joined: 22. February 2008 11:10


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 5 guests