Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Optimierung einer Tabelle (https://www.delphipraxis.net/106333-optimierung-einer-tabelle.html)

RavenIV 9. Jan 2008 12:29

Re: Optimierung einer Tabelle
 
Zitat:

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.

alex517 9. Jan 2008 12:30

Re: Optimierung einer Tabelle
 
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

IBExpert 9. Jan 2008 12:31

Re: Optimierung einer Tabelle
 
Zitat:

Zitat von pronny31
:wall: Bei 168 Feldnamen ????????????????
Sicher abbbbbbbbbbbbbbbbbbbäääääääääääääääääääääääääääärr rrrrrrrrrrrrrrrrrrrrrrrrrr. :warn:

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 :-)

pronny31 9. Jan 2008 12:43

Re: Optimierung einer Tabelle
 
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 %

RavenIV 9. Jan 2008 12:46

Re: Optimierung einer Tabelle
 
Du könntest Dir von der DB die Feldnamen geben lassen und dann durchiterieren.

pronny31 9. Jan 2008 12:51

Re: Optimierung einer Tabelle
 
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.

mkinzler 9. Jan 2008 12:51

Re: Optimierung einer Tabelle
 
Zitat:

Nein die Tabelle ist genau durchdacht !
Die Bezeichnung Bez1, Bez2 usw. lässt aber auf mangelnde Normalisierung Tippen.

hoika 9. Jan 2008 12:52

Re: Optimierung einer Tabelle
 
Hallo,

ein

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

SQL-Code:
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

mkinzler 9. Jan 2008 12:53

Re: Optimierung einer Tabelle
 
Zitat:

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.

RavenIV 9. Jan 2008 12:56

Re: Optimierung einer Tabelle
 
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)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:57 Uhr.
Seite 2 von 5     12 34     Letzte »    

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