AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi TADOCommand & TADODataSet (Recordset-Objekt -> TMemo)?

TADOCommand & TADODataSet (Recordset-Objekt -> TMemo)?

Ein Thema von Kedariodakon · begonnen am 23. Sep 2004 · letzter Beitrag vom 24. Sep 2004
Antwort Antwort
Seite 3 von 4     123 4   
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#21

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:03
Ganz einfach:
Ziehe auf deine Form eine TDataSource (Registerkarte: Datenzugriff)
Trage im OI unter "DataSet" dein ADODataSet ein.
Setze jetzt noch ein TDBGrid auf deine Form. Trage bie diesem unter "DataSource" deine DataSource1 ein.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#22

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:03
Zitat von Kedariodakon:
Aber xp_cmdshell ist keine Stored Procedure sondern ein SQL-Befehl...
AHA !
Dann nimm mal ein TADODataset und verbinde dieses mit einer DataSource und einem DBGrid.
Natürlich auch mit einer ADOConnection verbinden.
Delphi-Quellcode:
ADODataset1.CommandText := 'EXECUTE master..xp_cmdshell '+QuotedStr('dir *.*');
ADODataset1.Active := True;
Bei mir tut's.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#23

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:06
Halt,
kommando zurück
Es geht zwar so wie ich es beschrieben habe aber Du wolltest es ja in einem TMemo. Das ist dann noch einfacher.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ADOCommand1.CommandText := 'xp_cmdshell "dir *.exe"';
  ADODataSet1.Recordset := ADOCommand1.Execute;
  ADODataSet1.First;
  while not (ADODataSet1.Eof) do
  begin
    Memo1.Lines.Add(ADODataSet1.Fields.FieldByName('output').AsString);
    ADODataSet1.Next;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#24

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:12
JUHU es hat fuktioniert ^^
zumindest das mit dem DBGrid dingens ..
Da steht ja nu auch wie die Tabelle heißt

Danke Jungens, da wär ich nie allein drauf gekommen!!!
dieses dumme DataSource dingens aber auch

Aufgabe erfüllt! Ich geb einen aus

MFG Keda
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#25

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:18
WOW das mit dem Memofeld geht ja besser als ich dachte ^^
Und das auch noch ohne Source Object

So nu erst mal Pause

Dann werd ich mal das alles analysieren ^^

Ich hab gestern auch so ähnlich rumhantiert, hatte aber nur Fehler annen kopfgeworfen bekommen...
Hatte ja keine Ahnung wie ich an den Tabellennamen hätte kommen sollen

gibts da irgendwas wie man hätte drankommen können ohne das im Grid abzulesen?


MFG Keda
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#26

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:23
Zitat von Kedariodakon:
...gibts da irgendwas wie man hätte drankommen können ohne das im Grid abzulesen? ..
In der Onlinehilfe des MS-SQL steht es leider auch nicht. Darum habe ich den Befehl einfach im Query-Analyser des SQL-Servers ausgeführt. Schon stand der Name des Feldes (nicht der Tabelle) da
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#27

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:29
ka was nen Query-Analyser ist, aber das werd ich auch noch lernen, beschäftige mich ja gerade erst mit der SQL-Problematik
ManManMan

bin mal gespannt, was für Probleme noch auf mich zu kommen werden

Also Danke erstmal!
Wie gesagt da wär ich nie, wirklich NIE allein drauf gekommen...

Also nochmal Special THX to Shmia & Sharky the SQL Specialists!!!


MFG Keda
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#28

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 12:50
Hai,

noch ein kleiner Nachtrag
Wenn Du xp_cmdshell auf dem Server ausführst ist der Feldname absolut egal
Du kannst auf Rückgabe werte auch über den Feldindex zugreifen. Da bei xp_cmdshell maximal eine Spalte zurück gegeben wird geht es also auch ganz locker so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ADOCommand1.CommandText := 'EXECUTE master..xp_cmdshell ' + QuotedStr ('dir *.exe');
  ADODataSet1.Recordset := ADOCommand1.Execute;
  ADODataSet1.First;
  while not (ADODataSet1.Eof) do
  begin
    Memo1.Lines.Add(ADODataSet1.Fields.Fields[0].AsString); //Feld 0 (das erste) der Ergebnissmenge
    ADODataSet1.Next;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#29

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 13:05
Öhm warum hast du nun EXECUTE master..xp_cmdshell genommen statt nur xp_cmdshell ???

hat das nen Grund?

MFG Keda
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#30

Re: TADOCommand & TADODataSet (Recordset-Objekt -> TM

  Alt 24. Sep 2004, 17:20
Zitat von Kedariodakon:
Öhm warum hast du nun EXECUTE master..xp_cmdshell genommen statt nur xp_cmdshell ...
Das "Execute" kannst Du auch weglassen.
das master.. ist wichtig weil diese Funktion nur in dieser "Tabelle" vorhanden ist.
Hast Du die möglichkeit die OnlineHilfe des MS-SQL-Servers zu lesen?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:54 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