AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankeintrag über Editfelder
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankeintrag über Editfelder

Offene Frage von "thomas29h2000"
Ein Thema von scuby · begonnen am 3. Aug 2005 · letzter Beitrag vom 10. Aug 2005
Antwort Antwort
Seite 2 von 3     12 3      
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#11

Re: Datenbankeintrag über Editfelder

  Alt 4. Aug 2005, 19:58
Zitat von marabu:
Hi Frank,

so geht das:

Query.RequestLive := true; marabu
Braucht man dann nicht eine UpdSQL dafür ??? zumin. brauchte ich die immer bei meine MySQL Comps
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#12

Re: Datenbankeintrag über Editfelder

  Alt 4. Aug 2005, 20:38
Hi Frank,

du kannst RequestLive nicht für beliebige Anfragen setzen. Die Komponente TQuery bietet diese property in Verbindung mit CanModify an, um die Arbeit mit einem aktualisierbaren Cursor zu ermöglichen, falls ein solcher von der Datenbank resp. middle-ware unterstützt wird. In der Regel gilt, dass die Projektion einer Basis-Tabelle bearbeitet werden kann, während ein Join nur gelesen werden kann.

Alles klar?

marabu
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#13

Re: Datenbankeintrag über Editfelder

  Alt 4. Aug 2005, 21:49
Jop deshalb hat es wohl bei mir nie geklappt
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#14

Re: Datenbankeintrag über Editfelder

  Alt 5. Aug 2005, 10:08
Delphi-Quellcode:
begin
Query1.Insert;
Query1.FieldByName('Name').AsString := edit1.text;
Query1.FieldByName('Vorname').AsString := edit2.text;
Query1.FieldByName('Gebdat').AsString := edit3.text;
Query1.FieldByName('Straße').AsString := edit4.text;
Query1.FieldByName('Hnr').AsString := edit5.text;
Query1.FieldByName('PLZ').AsString := edit6.text;
Query1.FieldByName('Ort').AsString := edit7.text;
Query1.FieldByName('tel').AsString := edit8.text;
Query1.FieldByName('Fahrschule').AsString := edit9.text;
Query1.FieldbyName('Kurs').ASString := Label2.Caption;
Query1.Post;
end;
In diesem Bereich steckt irgendwo ein Fehler drin, doch finde ich ihn mal wieder nicht!!! (Überlegt gerade das Programieren naczulassen)
Ich würde mich freuen, wenn ihr den Fehler mal wieer finden könntet.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#15

Re: Datenbankeintrag über Editfelder

  Alt 8. Aug 2005, 07:54
Hi scuby,

du hast vergessen mitzuteilen, welcher Fehler in diesem Bereich gemeldet wird.

marabu
  Mit Zitat antworten Zitat
thomas29h2000

Registriert seit: 9. Aug 2005
21 Beiträge
 
#16

Re: Datenbankeintrag über Editfelder

  Alt 9. Aug 2005, 10:58
Hallo ich hab da auchmal ne frage aber ich weiß nicht ob da hier überhaupt die passende stelle ist.
Ich hab am Mittwoch mit Delphi angefangen, also noch keinen Ahnung.

Mein Problem ist das ich wenn ich ein neuen Tupel in eine Tabellen einfühgen will erscheint zwar ein neues Tupel aber der der datumswert ist immer auf 1.1.1900 gesetzt. In der Tabelle werden in der Spallte aber auch NULL-Werte zugelasen, und wenn ich die anfrage direkt auf der DB ausführe geht es auch.

Code:
 
if(km <> '') and (term = '') then
        sqlstring := 'INSERT INTO AUTOS_UNTERSUCHUNGEN '+
                     'SELECT Max(PK)+1 AS PK, '+num+' AS PKAUTOS, null AS FESTER_TERMIN, '
                     +km+' AS NACH_KILOMETER, '+besch+' AS BESCHREIBUNG FROM AUTOS_UNTERSUCHUNGEN';

 with Query_AUTOS_UNTERSUCHUNGEN do
    begin
      Close;
      SQL.Clear;
      SQL.Add(sqlstring);
      ExecSQL;
    end;
jetzt hab ich das so wie oben mit dem

Code:
 with Query1 do begin
    Sql.Text := SQL_SELECT;
    Open;
    Insert;
    FieldByName('Name').AsString := NameEdit.Text;
    ...
    FieldByName('Vorname').AsString := VornameEdit.text;
    Post;
  end;
probiert das geht bei mir auchnicht. da gibt die Fehlermeldung das nur Lesender zugriff auf die datenbank gewährt wird. Hab kein Plan was ich machen muss.

Danke im voraus
Thomas
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#17

Re: Datenbankeintrag über Editfelder

  Alt 9. Aug 2005, 11:10
Hallo Thomas,

herzlich willkommen in der Delphi-PRAXiS.

Dein erster Lösungsansatz hat doch offenbar funktioniert? Allerdings bin ich nicht sicher, ob ich verstehe, warum du die Aggregate, die du auf deiner Tabelle berechnest, auch in der gleichen Tabelle speichern willst. Sieht nach einer Auswertung aus, aber solche Ergebnisse speichert man doch nicht in der Basis-Tabelle.

Dass der zweite Ansatz nicht funktioniert, könnte daran liegen, dass du bei der Query nicht RequestLive := true eingestellt hast.

Grüße vom marabu
  Mit Zitat antworten Zitat
thomas29h2000

Registriert seit: 9. Aug 2005
21 Beiträge
 
#18

Re: Datenbankeintrag über Editfelder

  Alt 9. Aug 2005, 11:42
Hi,
danke für die schnelle antwort.

Berechnen tue ich gar nichts, ich schaufe erst ob die eingaben km und term aus Edit-Feldern
vorhanden bzw. nicht vorhanden sind.
Dann will ich ein Tupel einfühgen, sodas bei FESTER_TERMIN (typ: datetime) einen Null-wert hat.
Aber in der Tabelle steht dann immer '1.1.1900' und das soll nicht sein, da soll dann einfach nicht stehen.

Wenn ich RequestLive auf True setze kommt das immernoch. ich weis nicht was ich falsch mache.

thomas
  Mit Zitat antworten Zitat
thomas29h2000

Registriert seit: 9. Aug 2005
21 Beiträge
 
#19

Re: Datenbankeintrag über Editfelder

  Alt 9. Aug 2005, 11:55
Hi hab meine fehler.
hatte den an ner ganz ander stelle. hatte im vergleich '= null' anstelle von 'is null'
sry für die umstände und nochmals danke für die schnelle hilfe

gruß thomas
  Mit Zitat antworten Zitat
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#20

Re: Datenbankeintrag über Editfelder

  Alt 10. Aug 2005, 14:06
Delphi-Quellcode:
begin
Query1.Insert;
Query1.FieldByName('Name').AsString := edit1.text;
Query1.FieldByName('Vorname').AsString := edit2.text;
Query1.FieldByName('Gebdat').AsString := edit3.text;
Query1.FieldByName('Straße').AsString := edit4.text;
Query1.FieldByName('Hnr').AsString := edit5.text;
Query1.FieldByName('PLZ').AsString := edit6.text;
Query1.FieldByName('Ort').AsString := edit7.text;
Query1.FieldByName('tel').AsString := edit8.text;
Query1.FieldByName('Fahrschule').AsString := edit9.text;
Query1.FieldbyName('Kurs').ASString := Label2.Caption;
Query1.Post;
end;
In diesem Bereich steckt noch imer mein ehler und zwar bekomme ich immer die Meldung das nur Lesesender zugriff haben aber keine Schreibsender. Wie kann ich das umehen, so das ich aus meinen Editfeldern einen Eintrag in die DB machen kann?!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 12: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