AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Optimierung einer Tabelle
Thema durchsuchen
Ansicht
Themen-Optionen

Optimierung einer Tabelle

Ein Thema von pronny31 · begonnen am 9. Jan 2008 · letzter Beitrag vom 10. Jan 2008
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:29
Zitat von pronny31:
Bei 168 Feldnamen ?
Eins Tabelle mit 168 Spalten bedarf eh einer überarbeitung.
Das kann bestimmt in eine der Normalformen übergeleitet werden.
Falls Dir das jetzt nichts sagt, solltest Du Dich mal ein Wenig über DB-Design informieren.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
alex517

Registriert seit: 23. Nov 2004
Ort: Bernau b. Berlin
273 Beiträge
 
Delphi XE5 Enterprise
 
#12

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:30
Hallo pronny31,

Zitat:
Ich weiss das beide Tabellen identisch ist und habe im vergleich in IBExpert

- in der linken Tabelle ist kein BEZ1 zu sehen.
- in der linken Tabelle BEZ2, BEZ3 VARCHAR(60) und in der rechten VARCHAR(160).

Das ist nicht wirklich identisch.


Fehler

Zitat:
Overflow occurred during data type conversion.
conversion error from string "Diverse Adresse".
Hier versucht Firebird eine Konvertierung, das sollte bei identischen Tabellen eigentlich nicht notwendig sein.
Ich gehe mal davon aus das "Diverse Adresse" kein Feldname ist sondern der Inhalt eines Feldes.
Du solltes mal untersuchen welches Feld das ist und die Typen dieses Feldes in beiden Tabellen vergleichen.

alex
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
646 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:31
Zitat von pronny31:
Bei 168 Feldnamen ????????????????
Sicher abbbbbbbbbbbbbbbbbbbäääääääääääääääääääääääääääärr rrrrrrrrrrrrrrrrrrrrrrrrrr.
aber was? einfach die tabelle in ibexpert aus dem datenbankexplorer mit drag and drop in den sql editor ziehen
und schon kannst du auswählen,was für ein sql du dazu haben möchtest
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat
pronny31

Registriert seit: 8. Okt 2007
97 Beiträge
 
#14

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:43
Nein die Tabelle ist genau durchdacht !
Ich will jetzt nur durch Benutzersteuerung die Datensätze von a nach b kopieren (archivieren)

Die Struktur ist identisch 100 %
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#15

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:46
Du könntest Dir von der DB die Feldnamen geben lassen und dann durchiterieren.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
pronny31

Registriert seit: 8. Okt 2007
97 Beiträge
 
#16

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:51
Ich denke das es Lücken gibt und in Mysql nutze ich den Befehl Optimize was es hier icht gibt und Backup Restore oder Sweep macht nix !
Das Problem ist das ich im IBExpert jetzt noch nachollziehen kann das es Felder gibt welche nachträglich hinzugefügt wurden oder angepasst worden sind ! Ich denke das an den stellen wo was gelöscht worden ist der "Raum" nie mehr nutzbar ist und somit Löcher entstehen was sich mit der Übersicht in IBEXPERT deckt ! Ich bräuchte einen Befehl welcher die Tabellen bei bestehenden Datenmenge so organisiert das es kein "Lücken" mehr gibt.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:51
Zitat:
Nein die Tabelle ist genau durchdacht !
Die Bezeichnung Bez1, Bez2 usw. lässt aber auf mangelnde Normalisierung Tippen.
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

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

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:52
Hallo,

ein

select * from TableA liefert bestimmt nicht die gleiche Feld-Reihenfolge zurück wie

select * from TableB Abhilfe1:
siehe oben

Abhilfe2:
ibexpert Tabelle bearbeiten , Popup "reorder fields"


Das Ändern der Länge eines Felds kann auch einfach in IBExpert gemacht werden,
ohne ein neues Feld ("edit domain").

Ein Optimize macht nicht so viel Sinn,
woher soll denn Firebird wissen, das Name in TableA das gleiche wie Name in TableB ist ?


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:53
Zitat von pronny31:
Ich denke das es Lücken gibt und in Mysql nutze ich den Befehl Optimize was es hier icht gibt und Backup Restore oder Sweep macht nix !
Das Problem ist das ich im IBExpert jetzt noch nachollziehen kann das es Felder gibt welche nachträglich hinzugefügt wurden oder angepasst worden sind ! Ich denke das an den stellen wo was gelöscht worden ist der "Raum" nie mehr nutzbar ist und somit Löcher entstehen was sich mit der Übersicht in IBEXPERT deckt ! Ich bräuchte einen Befehl welcher die Tabellen bei bestehenden Datenmenge so organisiert das es kein "Lücken" mehr gibt.
Nein, aber das Problem liegt an der Reihenfolge der Felder nicht an Lücken. Die einzige Möglichkeit wäre wohl die Systemtabellen zu manipulieren, wovon aber abgeraten werden muss.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#20

Re: Optimierung einer Tabelle

  Alt 9. Jan 2008, 12:56
Falsche Aussage 1: Die Tabelle ist durchdacht
Das mag ja schon sein, dass Du Dir etwas überlegt hast.
Du hast aber nicht genug überlegt und die Idee des DB-Designs missachtet.

Falsche Aussage 2: Backup/Restore macht nix
Das macht sehr wohl etwas.
a) wie es der Name schon sagt, legt es ein Backup an und stellt dieses wieder her.
b) es "löscht" nicht mehr benutzten Platz in der DB (z.B. von Delete)
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 17:28 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