AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi MyDac unterschie zwischen TMyTable und TMyQuery
Thema durchsuchen
Ansicht
Themen-Optionen

MyDac unterschie zwischen TMyTable und TMyQuery

Ein Thema von Karstadt · begonnen am 9. Feb 2006 · letzter Beitrag vom 15. Feb 2006
Antwort Antwort
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#1

MyDac unterschie zwischen TMyTable und TMyQuery

  Alt 9. Feb 2006, 22:42
Datenbank: mysql • Version: 4 • Zugriff über: mydac
Hallo. Kann mir jemand den Unterschie zwischen TMyQuery und TMyTable erklären:


TMyTable ist:

Use TMyTable to access data in a table. TMyTable provides properties and methods to gain direct access to records and fields in an underlying server database without writing SQL statements.
...

Mit TMyQuery arbeite ich mit SQL befehlen. Das ist aber auch der Sinn der Sache. Bei Mysql Server arbeitet ja mit SQL Befehlen.

Meine eigentliche Frage ist wo wird diese TMYTable komponente überhaupt eingesetzt? denn Append, Edit, Post kann ich auch mit MyQuery
  Mit Zitat antworten Zitat
shmia

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

Re: MyDac unterschie zwischen TMyTable und TMyQuery

  Alt 10. Feb 2006, 10:19
TMyTable ist im Grund nicht anderes, als eine Query, der immer folgende Abfrage zugrunde liegt:
SELECT * FROM <Tablename> Diese Abfrage ist innerhalb der Komponente verborgen; von Aussen kann man nur den Tabellennamen einstellen.
TMyTable ist für die Leute gedacht, die mit SQL nicht in Berührung kommen wollen.
Es ist klar, dass man mit TMyTable keine effiziente Datenbankanwendung schreiben kann.
Andreas
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#3

Re: MyDac unterschie zwischen TMyTable und TMyQuery

  Alt 15. Feb 2006, 08:57
Wie meinst du das?

Zitat:
Es ist klar, dass man mit TMyTable keine effiziente Datenbankanwendung schreiben kann.
PS: TMyQuery hat keine Fuktion EmptyTable Delete ja, aber nicht empty
  Mit Zitat antworten Zitat
shmia

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

Re: MyDac unterschie zwischen TMyTable und TMyQuery

  Alt 15. Feb 2006, 09:11
Zitat von Karstadt:
Zitat:
Es ist klar, dass man mit TMyTable keine effiziente Datenbankanwendung schreiben kann.
Wie meinst du das?
PS: TMyQuery hat keine Fuktion EmptyTable Delete ja, aber nicht empty
Stell dir vor, du hast eine Strassentabelle mit 1.3 Mio Strassensätzen.
Jetzt möchtest du alle Strassen mit einer bestimmten Postleitzahl von Berlin herausziehen
und dem Bediener in einer Liste anbieten.
Das ist übrigens kein fiktives Beispiel, sondern das gibt es wirklich
Mit SQL würdest du einfach schreiben:
SELECT * FROM Strasse WHERE PLZ='10064' und in spätestens 10 Sekunden wäre das Ergebnis da.
Mit TMyTable würde das Gleiche im Durchschnitt über eine Stunde dauern.
Grund: TMyTable zieht ALLE 1.3 Mio Datensätze und dann musst du in einer Schleife die richtigen ausfiltern.
Zitat von Karstadt:
PS: TMyQuery hat keine Fuktion EmptyTable Delete ja, aber nicht empty
Dann nimm einfach eine Query mit
DELETE FROM NameDerTabelle
Andreas
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#5

Re: MyDac unterschie zwischen TMyTable und TMyQuery

  Alt 15. Feb 2006, 09:58
In diesen Fall hat die Komponente TMytable.SQL Methode
  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 09:05 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