AGB  ·  Datenschutz  ·  Impressum  







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

select * und blobs

Ein Thema von hoika · begonnen am 4. Okt 2006 · letzter Beitrag vom 9. Okt 2006
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#1

select * und blobs

  Alt 4. Okt 2006, 13:10
Datenbank: FB • Version: 1.5 • Zugriff über: BDE
Hallo,

wenn ich in eine Tabelle ein Blobfeld einfüge
und per select * zugreife,
wird dann nur das Blobhandle, oder der ganze Blob-Inhalt übers Netz geladen.

Hintergrund:
Ich benutze an vielen Stellen das select *
und möchte Performance-Probleme vermeiden.


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: select * und blobs

  Alt 4. Okt 2006, 18:28
Ich weiß nicht, wie es beim Zugriff über die BDE ist, aber normalerweise wird nur der Blobhandle übermittelt.
Markus Kinzler
  Mit Zitat antworten Zitat
stefanniehaus

Registriert seit: 3. Mär 2005
11 Beiträge
 
Delphi XE2 Professional
 
#3

Re: select * und blobs

  Alt 9. Okt 2006, 10:58
Also im Normalfall müsstest du das ganze blob bekommen!
Und merken:
Ein guter Programmierer verwendet nie "SELECT *"
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#4

Re: select * und blobs

  Alt 9. Okt 2006, 11:18
mal eine kurzte frage:
Zitat:
Ein guter Programmierer verwendet nie "SELECT *" Wink
meinst du damit man sollte die fehlder dort wählen die gebraucht werden ?
z.b. Select spalte1,spalte2
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: select * und blobs

  Alt 9. Okt 2006, 11:24
Ja, weil dadurch die Abfragedauer, die grösser Abfrage und der Ergebnismenge sowie die Grösse der zu übertragenen Daten verringert. Auch Kombinationen aus Tabellen am besten gleich per Select mit erledigen und nicht beide Tabellen abfragen um dann selbst das Ergebnis zu kombinieren. Die Dauer und Grösse der Daten zum einen und die Dauer der Kombination zum anderen. Eine Datenbank ist darauf spezialisiert und kombiniert dir die Daten schneller als dein Programm.
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#6

Re: select * und blobs

  Alt 9. Okt 2006, 11:51
Zitat:
und nicht beide Tabellen abfragen um dann selbst das Ergebnis zu kombinieren.
kannst du mal ein beispiel für so eine abfrage posten?
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: select * und blobs

  Alt 9. Okt 2006, 12:01
Hallo,


1. bisher brauche ich alle Felder (jaja)

2. zum join

er meinte, dass man z.B. nie sowas schreiben sollte

SQL-Code:
select *
from table1
join table2 on table2.table_1_id=table1.id
Damit bekommst du alle Felder von table1 UND table2.
In der Regel braucht man aber nur ein paar Felder.
Durch das select * werden aber alle übers Netz gejagt,
und das kann bei Tabellen mit vielen Feldern schon etwas dauern.

Man schreibt dann normaerweise sowas wie

SQL-Code:
select table1.id, table1.name, table2.was_weissich
from table1
join table2 on table2.table_1_id=table1.id
Ein zweiter Nachteile des select * ist, wenn es einen
Feldnamen gibt, der in beiden Tabellen vorhanden ist.
Wenn du Pecj hast, wird irgendeine Tabelle "ausgelost",
und deren Feld übergeben.

Heiko
Heiko
  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 15:27 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