AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Resultset bei Stored Procedures so möglich?
Thema durchsuchen
Ansicht
Themen-Optionen

Resultset bei Stored Procedures so möglich?

Ein Thema von stho · begonnen am 15. Dez 2010 · letzter Beitrag vom 17. Dez 2010
Antwort Antwort
stho

Registriert seit: 16. Sep 2009
Ort: 127.0.0.1
288 Beiträge
 
Delphi 2007 Professional
 
#1

Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 15:13
Datenbank: MySQL • Version: 5.0 • Zugriff über: TMyDAC
Nachdem ich mich nun zum Thema Stored Procedures ein bisschen schlau gemacht habe,
würde ich gerne folgendes wissen, ob das was ich vor habe mit SPs funktioniert oder nicht.
Meine Abfrage ist:

SELECT * FROM TABLE1
WHERE X = PosX AND Y = PosY;

-> Ich will also wissen welche Objekte (Mehrzahl) sich an der Position X/Y befinden.
(Da kommen noch ein paar mehr Abfragen hinzu, aber das ist nebensächlich)

Kann man das ganze auch als SP hinterlegen und dann eine Ergebnis-Tabelle zurückbekommen, genau wie bei
dem gesendeten Statement?

Als Beispiel: "Call GetObjOn(X, Y)"
(Hierbei habe ich gerade nicht auf Syntax geachtet)
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#2

AW: Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 15:52
Kann man das ganze auch als SP hinterlegen und dann eine Ergebnis-Tabelle zurückbekommen, genau wie bei
dem gesendeten Statement?
Ja.
Code:
create procedure GetObjOn(PosX int(10),  //oder welcher Typ auch immer
                          PosY int(10))
begin
  SELECT * FROM TABLE1
  WHERE X=PosX AND Y=PosY;
end;
Thomas Nitzschke
  Mit Zitat antworten Zitat
stho

Registriert seit: 16. Sep 2009
Ort: 127.0.0.1
288 Beiträge
 
Delphi 2007 Professional
 
#3

AW: Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 16:08
und als Rückgabewert bekomme ich dann meine Tabelle?
Ist das wirklich so simpel?

Also im Prinzip nur:

Delphi-Quellcode:
aQuery.SQL.Text := 'GetObjOn(:PosX, :PosY)';
aQuery.ParamByName('PosX').asInteger := 1;
aQuery.ParamByName('PosY').asInteger := 4;
aQuery.Open;
//...
???
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#4

AW: Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 16:13
Ich versteh schon, dass man hier im Forum fragt, wenn man bei einem Problem nicht weiterkommt, dazu ist es da und immer wieder sehr hilfreich.

Aber wie wäre es, in so einem Fall, mit erst einmal ausprobieren und danach, wenn es nicht funktioniert, posten.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 16:17
Nee, fragen geht doch schneller ... na ja, eigentlich nicht
... aber es ist effizienter ... nee, eigentlich auch nicht
... aber man hat drüber gesprochen ... ja, zum x-ten mal


achja, da war noch was Hier im Forum suchenstored procedure result
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (15. Dez 2010 um 16:19 Uhr)
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#6

AW: Resultset bei Stored Procedures so möglich?

  Alt 15. Dez 2010, 17:14
Ist das wirklich so simpel?
Ja.

Allerding müßte da noch ein "call" mit rein:
aQuery.SQL.Text := 'call GetObjOn(:PosX, :PosY)';
Thomas Nitzschke
  Mit Zitat antworten Zitat
stho

Registriert seit: 16. Sep 2009
Ort: 127.0.0.1
288 Beiträge
 
Delphi 2007 Professional
 
#7

AW: Resultset bei Stored Procedures so möglich?

  Alt 16. Dez 2010, 14:37
das hatte nichts mit Faulheit oder ähnlichem zu tun...
Ich HABE mich informiert und wollte hier nur eine konkrete Antwort, da die bisherigen Antworten
in meinen Augen nicht komplett ersichtlich waren
Außerdem wurde in fast jedem Beispiel immer nur ein Boolean oder Integer zurückgeliefert.
Teilweise waren sogar Fehlermeldungen wie "Query/Table not allowed as result" (Habs nicht mehr genau im Kopf) zu lesen.
Das war der ganze Grund...

-> Ein Schüler fragt den Lehrer auch nach einer Lösung wenn er nicht alleine darauf kommt. Oder?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Resultset bei Stored Procedures so möglich?

  Alt 17. Dez 2010, 10:39
Wahrscheinlich ist es dir noch nicht aufgefallen:

Wir sind keine Lehrer mit einem Lehrauftrag!
Somit muß der Lehrer dir das erklären und wir dürfen dir das erklären.
Wir erwarten aber auch Eigeninitiative.

Du hast nicht durchblicken lassen, dass du dich mit SP und Resultset hinreichend auseinandergesetzt/ausprobiert hast.
Sonst hättest du uns ja Delphi-Code mitgeliefert.

Also immer den Ball flach halten

achja, da fällt mir doch noch auf, dass es sich hier mehr um eine Glaubens- als eine Verständnisfrage handelt.
Somit wäre das ja eh was für Religionslehrer gewesen ...
"Kann es sein dass hier Religionslehrervolk anwesend ist?" - "Nein, Nein ..."
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (17. Dez 2010 um 10:44 Uhr)
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#9

AW: Resultset bei Stored Procedures so möglich?

  Alt 17. Dez 2010, 14:07
das hatte nichts mit Faulheit oder ähnlichem zu tun...
-> Ein Schüler fragt den Lehrer auch nach einer Lösung wenn er nicht alleine darauf kommt. Oder?
Laß Dich nicht provozieren, stho: In Foren (nicht nur diesem) ist es schon lange Unsitte, daß sich eine Reihe von Leuten wie in "Mein Revier" verhalten: Markieren (Hunde machen das, indem sie ihre Duftmarke hinterlassen) und andere auf ihre "Fehler" hinweisen (Hunde kläffen).
Häufig liest man bei "Neulinge" schon vor der eigentlichen Frage die Entschuldigung dafür, daß sie ihre Frage evtl. im falschen Thema gestellt haben oder sie trotz Suche nicht weitergekommen sind.
Oft wird von den "Profis" nicht auf die eigentliche Frage geantwortet, sondern lieber wortreich darüber diskutiert, wie sinnvoll die Fragestellung war. Von dem Spruch Es gibt keine dummen Fragen, sondern nur dumme Antworten. haben wohl einige noch nichts gehört oder ihn einfach in das "Temp-Verzeichnis" ihres Gehirns verbannt. Im Suchpfad sind dagegen nur die ständig verwendeten Units "Recht.pas" und "Ordnung.pas"...

Zitat von der Portalseite:
Zitat:
Ein herzliches Willkommen in der freundlichen Entwickler-Community...
@Sir Rufo
Zitat:
Wahrscheinlich ist es dir noch nicht aufgefallen:

Wir sind keine Lehrer mit einem Lehrauftrag!
Somit muß der Lehrer dir das erklären und wir dürfen dir das erklären.
Wir erwarten aber auch Eigeninitiative.

Du hast nicht durchblicken lassen, dass du dich mit SP und Resultset hinreichend auseinandergesetzt/ausprobiert hast.
Sonst hättest du uns ja Delphi-Code mitgeliefert.

Also immer den Ball flach halten...
Auch Lehrer erwarten Eigeninitiative. Sollte zumindest so sein.
Und sie sollten Geduld und Verständnis mitbringen. Im Optimalfall. Und das nicht, weil sie dafür bezahlt werden, sondern weil es dazugehört.
Wenn ich mehr weiß, als ein anderer, muß ich ihm das nicht unter die Nase reiben. Natürlich ist die Hilfe freiwillig. Aber kann oder will ich nicht antworten, lasse ich das einfach sein und kläffe nicht herum - nur um wenigstens irgend etwas von mir gegeben zu haben.

Die Bemerkung "Also immer den Ball flach halten..." ist anmaßend und beleidigend. Und ich denke, das widerspricht ebenfalls den Forenregeln - oder täusche ich mich?

Aber ich denke, man(n) sollte eine gewisse Art von Höflichkeit nicht nur deshalb verwenden, weil sie in irgendwelchen Regeln stehen, sondern deshalb, weil es das Miteinander wesentlich erleichtert.
Nicht nur im Internet, sondern auch im "richtigen" Leben...
Thomas Nitzschke

Geändert von Thom (17. Dez 2010 um 14:11 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz