Announcement

Collapse
No announcement yet.

Table.update

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Table.update

    hallo,
    ich hab TTable,DBGrid+Datasource gekoppelt,setze per SQL-Komponente ein Insert ab und sage dann:table1.close;table1.open;um den neuen Datensatz auch im Grid wiederzufinden.
    1.Ist das effektiv und richtig?
    2.wie komme ich am schnellsten an die Position,an die ich den Datensatz eingefügt habe bzw an das Ende der Tabelle?

    Gruß,Marko

  • #2
    vielleicht sollte ich hinzufügen,daß ich mit einem SQL-Server kommuniziere und ODBC als Schnittstelle benutze.Ist TTable da überhaupt sinnvoll?Sollte ich vielleicht TQuery mit Grid und DataSource koppeln?,danach muß dann ein query1.close/open ausgeführt werden

    Comment


    • #3
      Hallo,

      sowohl <b>TTable</B> als auch <b>TQuery</b> sind (bei einer geeigneten Konfiguration) für diese Aufgabe geeignet. Allerdings würde ich dann bei einem Typ bleiben - das Einlesen der Daten über TTable und das Einfügen von Daten über TQuery (INSERT) ist aus meiner Sicht nicht sinnvoll.

      Bei einer Entscheidung für TQuery muss die Datenmenge in jedem Fall über Close/Open (alias Active = FALSE/TRUE) neu aufgebaut werden, wenn neue Daten eingelesen werden sollen.

      Bei einer Entscheidung für TTable erreicht man nur dann eine gute Performance, wenn<br>
      a) die Datenmenge der Ergebnismenge auf dem SQL-Server klein gehalten wird (kleine Tabellen vollständig abfragen; groesse Tabellen über einen FILTER einschränken usw.), und <br>
      b) über die Alias-Eigenschaft ENABLE SCHEMA CACHE die Schema-Daten der Datenbank (Tabellenstruktur etc.) lokal auf dem Client zwischengepuffert werden

      Comment

      Working...
      X