Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Mastersource = Filter oder Select from? (https://www.delphipraxis.net/66401-mastersource-%3D-filter-oder-select.html)

Karstadt 29. Mär 2006 09:50

Datenbank: MYSQL • Version: 4 • Zugriff über: Direkt

Mastersource = Filter oder Select from?
 
Hallo. Die Eigenschaft MASTERSOURCE ist sehr gut, aber wie genauf funktioniert das mit MyQuery bzw TQuery. Werden die DS gefiltert oder mit Select From eingeschränkt?

Den bei 4.000 DS wird das vielleicht probleme geben, wenn die DS nur gefiltert werden (filtered). Unter Probleme meinte ich 1 Sekunde Länger als Select From

shmia 29. Mär 2006 11:04

Re: Mastersource = Filter oder Select from?
 
Bei ADO funktioniert das so:
Es gibt eine Master- und eine Detailquery.
Die Detailquery verwendet Parameter in der WHERE-Bedingung:
SQL-Code:
SELECT * FROM ArtikelB WHERE IdBestellung=:IdBestellung
Durch die Verbindung über "Mastersoure" (bei ADO heisst es nur DataSource) wird automatisch
beim Scollen in der Mastersource der Parameter :IdBestellung mit dem gleichnamigen Feld
befüllt und die Detailquery neu geöffnet/refreshed.

Bei MySQL-Komponenten wird das hoffentlich ebenso gehandhabt.
Ein Filter wäre je nach Daten um Welten langsamer.

Karstadt 29. Mär 2006 12:01

Re: Mastersource = Filter oder Select from?
 
Ich habe das mal in Delphi Buch anders verstanden. Dort wird das so erklrärt:

Masterfield mus ein Indexfeld sein und es wird mit Filter gearbeitet (in Delphi Buch wird aber nicht mit SQL sonder mit DB Datenbank gearbeitet)

mkinzler 29. Mär 2006 12:11

Re: Mastersource = Filter oder Select from?
 
Eine Filterung per SQl ist besser, da sie serverseitig ausgeführt wird. Ein Filter auf einem TTable-Objekt wird aber lokal ausgeführt.

Karstadt 29. Mär 2006 12:14

Re: Mastersource = Filter oder Select from?
 
Zitat:

Eine Filterung per SQl ist besser, da sie serverseitig ausgeführt wird. Ein Filter auf einem TTable-Objekt wird aber lokal ausgeführt.
Das ist klar! :) Bei SQL werden nur die DS übertragen die die SELECT entsprechen :)

Deswegen wollte ich das vorgehensweise von Mastersource wissen


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz