AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Query und Dbgrid

Ein Thema von plautzer · begonnen am 7. Aug 2004 · letzter Beitrag vom 8. Aug 2004
Antwort Antwort
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#1

Query und Dbgrid

  Alt 7. Aug 2004, 16:23
Mahlzeit,

Datenbank-system: Paradox7;

ich habe ein problem mit dem zugriff einer Query auf ein dbgrid.
Wie man einen eintrag speichert ist mir bekannt, jedoch weiß ich nicht wie man überhaupt etwas in das Grid eintragen kann. Ich habe zwar Query.insert im onklick event des grids geschrieben jedoch kommt sobald ich auf das grid klicke, die Fehlermeldung, das die query nicht im editiermodus ist.
Also habe ich query.edit hinzugefügt, da kam dann aber wieder die Fehlermeldung, das die query nur zu lesen und nicht zu schreiben da sei. Muss ich nun zu Eintrag in das grid eine Table nehmen, oder ist das auch mit ner query machbar?

Plautzer
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Query und Dbgrid

  Alt 7. Aug 2004, 19:23
Zunächsteinmal: Das DBGrid ist lediglich eine Darstellung des Ergebnisses der zugrundeliegenden Query oder Table.

Zitat:
Wie man einen eintrag speichert ist mir bekannt, jedoch weiß ich nicht wie man überhaupt etwas in das Grid eintragen kann. Ich habe zwar Query.insert im onklick event des grids geschrieben jedoch kommt sobald ich auf das grid klicke, die Fehlermeldung, das die query nicht im editiermodus ist.
Das DBGrid wird doch über ein DataSource mit der Query verbunden, wenn du jetzt Query1.Append oder Query1.Insert in deinem Quelltext eingibst, wird normalerweise im DBGrid ein leerer Datensatz erzeugt und der Cursor im ersten Feld des leeren Datensatzes positioniert. Alternativ kannst du natürlich mit dem Cursor über den letzten Datensatz manövrieren, dann wird ebenfalls ein leerer Datensatz erzeugt, wenn die Property AutoEdit der DataSource True ist. Fährst du mit dem Cursor dann wieder in eine andere Zeile des DBGrids, werden die Daten normalerweise übernommen. Empfehlenswert sind hier aber Buttons für Append und Post.

Zitat:
Also habe ich query.edit hinzugefügt, da kam dann aber wieder die Fehlermeldung, das die query nur zu lesen und nicht zu schreiben da sei.
Da du Paradox und damit Local SQL verwendest, hast du ein Problem, wenn deine Query über mehrere Tabellen deiner Datenbank geht (JOIN) und/oder die Query eine ORDER BY Klausel enthält. Sollte das der Fall sein, solltest du dir eine andere Methode zur Dateneingabe einfallen lassen. Geht es nur über eine einzelne Tabelle bietet sich da tatsächlich ein TTable an.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
DelphiFreund

Registriert seit: 29. Jul 2004
Ort: München
127 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Query und Dbgrid

  Alt 7. Aug 2004, 19:32
Ich verwende immer TQuery und zum sotieren Schlüssel(die hießen doch so ).

Gruß DelphiFreund
Sandro
Irren ist menschlich...
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Query und Dbgrid

  Alt 7. Aug 2004, 21:10
Zitat von plautzer:
Ich habe zwar Query.insert im onklick event des grids geschrieben jedoch kommt sobald ich auf das grid klicke, die Fehlermeldung, das die query nicht im editiermodus ist.
Also habe ich query.edit hinzugefügt, da kam dann aber wieder die Fehlermeldung, das die query nur zu lesen und nicht zu schreiben da sei. Muss ich nun zu Eintrag in das grid eine Table nehmen, oder ist das auch mit ner query machbar?
Wenn Du die Daten einer Query ändern willst, dann solltest Du die Eigenschaft RequestLive auf true setzen. Das hat allerdings auch keine Auswirkung, wenn Du Daten aus mehreren Tabellen verwendest mit Join oder Where. Dann kannst Du nur noch direkt über die Tabellen gehen oder alles in eine temporäre Tabelle schreiben mit SELECT .. INTO. Aus der musst Du dann wieder zuückaktualisieren, was im Multiuser Betrieb natürlich unangenehme Effekte haben kann.
  Mit Zitat antworten Zitat
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#5

Re: Query und Dbgrid

  Alt 7. Aug 2004, 21:11
Also query.append und query.insert funktioniert bei mir nicht-> fehlermeldung: Query ist nur zu lesen nicht zum schreiben da.

Ich habe ja keine problem eine table zum eintragen und ne query zum filtern zu benutzen. Das hatte ich auch anfangs vor, jedoch konnte ich es nicht umsetzen.
Gibts dafür irgentein tutorial dafür oda ne kleine beschreibung wie man Table und query zusammen im dbgrid verwendet?

Thx,

Palutzer
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Query und Dbgrid

  Alt 7. Aug 2004, 21:37
Zitat von plautzer:
Also query.append und query.insert funktioniert bei mir nicht-> fehlermeldung: Query ist nur zu lesen nicht zum schreiben da.
Poste doch einfach mal die Query, damit wir genauer sehen können was Sache ist.
  Mit Zitat antworten Zitat
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#7

Re: Query und Dbgrid

  Alt 8. Aug 2004, 14:37
.. ich hatte nen kleinen denkfehler

Es funzt jetzt.

Danke euch.

Plautzer
  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 04:19 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