Autor Beitrag
PPaB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 13:00 
Ich möchte meine Tabelle der Datenbank komplett in ein StringGrid übergeben.
Ich habe viel herumprobiert und im Internet nach einer Lösung gesucht, aber leider nichts brauchbares gefunden.
Ich habe eine MyBase-Datenbank erstellt und diese dann in einem DBGrid anzeigen lassen.

Hoffe ihr habt eine Idee und könnt mir helfen

PPaB
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 14:04 
Warum? Was ist an dem DBGrid denn nicht so optimal?
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Fr 22.05.09 14:27 
Und wenn würde ich die Daten direkt vom DataSet ins StringGrid übertragen

_________________
Markus Kinzler.
PPaB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 14:56 
@ mkinzler: Ja das wäre mir ja auch eagl, ob jetzt von DBGrid zu String Grid oder direkt vom DataSet. Trotzdem würe es mir helfen, wenn du mir sagen könntest wie das funtkioniert?

@ Robert.Wachtel: Ich würde gerne einfach in bestimmten Spalten überprüfen, was dort steht (oder nach etwas bestimmten suchen) und die Zeilen dann ausgeben. Aber ich habe das mit DBGrid nicht hinbekommen und mit StringGrid dürfte es einfacher sein. Wenn das mit DBGrid auch einfach funtioniert und du oder jemand anders mir das erklären könnte, wäre ich auch froh.
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Fr 22.05.09 15:15 
Zitat:
@ mkinzler: Ja das wäre mir ja auch eagl, ob jetzt von DBGrid zu String Grid oder direkt vom DataSet. Trotzdem würe es mir helfen, wenn du mir sagen könntest wie das funtkioniert?

Du kannst die Zellen mit StringGrid.Cells adressieren

Zitat:
@ Robert.Wachtel: Ich würde gerne einfach in bestimmten Spalten überprüfen, was dort steht (oder nach etwas bestimmten suchen) und die Zeilen dann ausgeben. Aber ich habe das mit DBGrid nicht hinbekommen und mit StringGrid dürfte es einfacher sein. Wenn das mit DBGrid auch einfach funtioniert und du oder jemand anders mir das erklären könnte, wäre ich auch froh.

Grundsätzlich geanuso, wie im StringGrid

_________________
Markus Kinzler.
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 15:20 
user profile iconPPaB hat folgendes geschrieben Zum zitierten Posting springen:
[...] @ Robert.Wachtel: Ich würde gerne einfach in bestimmten Spalten überprüfen, was dort steht (oder nach etwas bestimmten suchen) und die Zeilen dann ausgeben. Aber ich habe das mit DBGrid nicht hinbekommen und mit StringGrid dürfte es einfacher sein. Wenn das mit DBGrid auch einfach funtioniert und du oder jemand anders mir das erklären könnte, wäre ich auch froh.

Und warum machst Du das nicht mit den Spalten der Datenquelle?
PPaB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 15:31 
@ Robert.Wachtel
Wenn du mir sagen würdest, wie das geht, wäre das sehr hilfreich?
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 15:35 
In etwa so:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
MeineTabelle.First;
while not MeineTabelle.Eof do
begin
  if (MeineTabelle.Fields[xyz].AsString = MeinGesuchterInhalt) then
  begin
    TueWasAuchImmerProzedur();
  end;
  MeineTabelle.Next;
end;


Alternativ kannst Du natürlich auch FieldByName oder persistente Felder nutzen.

Evtl. solltest Du vorher/nachher noch DisableControls reps. EnableControls einsetzen.
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Fr 22.05.09 15:41 
alternativ geht auch ein
ausblenden Delphi-Quelltext
1:
Dataset.Locate('Suchfeld', Suchwert, []);					

oder
ausblenden Delphi-Quelltext
1:
Dataset.locate(suchfeld1;Suchfeld2;..), varArrayof([Suchwert1, suchwert2, ...]), []);					

ganz prima dafür.

Das setzen von Filtern könnte für deine Aufgabenstellung auch nützlich sein.

_________________
Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 15:45 
user profile iconzuma hat folgendes geschrieben Zum zitierten Posting springen:
[...] Das setzen von Filtern könnte für deine Aufgabenstellung auch nützlich sein.

Ja, würde man die Aufgabenstellung genauer spezifizieren, wäre natürlich eine konkrete Lösung möglich und man könnte auf viele Konjunktive verzichten... :mrgreen:
PPaB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 18:26 
Was ich machen möchte?

Ein Programm, in dem in einer Datenbank Liedernamen und die Bücher in denen diese vorkommen gespeichern sind
(2 Tabellen : in der Ersten: Lieder und die ID Zweiten: ID, Buch und Nummer ).
Jetzt möchte ich Suchabfragen einbauen:
--> Suche nach einem Liednamen
--> Suche nach einem Buch

Nach dieser Abfrage sollen die Datensätze, bei denen dies stimmt ausgegeben werden (in einer Tabelle).

So das wäre so ungefähr das Grundprinzip.

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

@ zuma: Sieht ganz schön aus, aber was muss ich den als Suchfeld eingeben?
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 18:41 
Wir wäre es mit Grundlagen? www.delphi-treff.de/tutorials/datenbanken/ und die über F1 erreichbare Delphi-Hilfe dürften einige Deiner Fragen lösen.
PPaB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 18:49 
ok hab das gefunden, was ins Suchfeld gehört, hatte nur nen Fehler im Code, deswegen hatte es nicht funktioniert

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Aber ein Frage habe ich trotzdem noch:

Wie kann ich in der Table den TableName einstellen ?
Bei mir gibt es da nichts zur Auswahl und in den Erklärungen steht, dass da die Datenbank reingehört,
aber wie ist das bei MyBase?
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 22.05.09 20:14 
Ad eins ist mir nicht ganz klar, was Du meinst und ad zwei: neue Frage, neuer Thread. Danke.
Chemiker
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 194
Erhaltene Danke: 14

XP, Vista 32 Bit, Vista 64 Bit, Win 7 64 Bit, Win 10, Win 11
BDS 2006, RAD Studio 2009+C++, Delphi 13, VS 2010 Prof.
BeitragVerfasst: Fr 22.05.09 20:23 
Hallo PPaB,

wozu brauchst Du eine Tabelle? Normal brauchst Du doch nur ClientDataset mit DataSource verbinden. Wenn Du 2 ClientDatSet hast kannst Du ein DataModul dafür anlegen.
Damit ereichst Du eine Trennung zwischen Datenbank und der GUI.

Bis bald Chemiker
PPaB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 22.05.09 22:09 
Hier gehts weiter --> www.delphi-forum.de/...instellen_92403.html

Ich habe halt keine andere Möglichkeit gesehen, wie ich das ohne Tabele machen könnte.
Bin über jede andere Möglichkeit erfreut.