2010-04-29 6 views

Antwort

4

Anzahl und Art der Spalten. Die Größe der Spalten in einer Tabelle ist begrenzt. Siehe here. Es gibt maximal 8.060 Bytes pro Zeile.

Sehr große Tabellen können sich ebenfalls auf die Leistung auswirken und können schwierig zu optimieren und zu indexieren sein.

Dies ist abgesehen von Daten zu halten ist konzeptionell anders, voneinander getrennt. Zum Beispiel haben ein Land und eine Währung eine 1: 1-Beziehung (anschauliches Beispiel, ich weiß, dass dies nicht immer der Fall ist). Ich würde sie immer noch nicht zusammenhalten.

+1

Zu breite Tabellen können auch langsamer zugänglich sein. – HLGEM

+0

@HLGEM - Ganz richtig. Zur Antwort hinzugefügt :) – Oded

+0

Das Limit von 8060 Bytes pro Zeile war ein OLD SQL Server-Limit. Dies funktioniert in SQL Server 2005: 'create table big_row (ein varchar (5000), b varchar (5000), c varchar (5000), d varchar (5000), e varchar (5000), f varchar (5000), g varchar) (5000), h varchar (max)), in big_row Werte einfügen (replizieren ('A', 5000), replizieren ('B', 5000), replizieren ('C', 5000), replizieren ('D', 5000), replizieren ('E', 5000), replizieren ('F', 5000), replizieren ('G', 5000), replizieren ('H', 10000)) 'Dein Link ist für SQL Server, jedenfalls dachte ich Frage war über MySql. Aber Ihr bisschen über große Tabellen (ich nehme an, Sie meinen, Breite und nicht Zeilen) ist richtig. –

3

Sie werden einige Informationen über finden, wenn es nützlich ist, eine Eins-zu-Eins-Beziehungen unter http://onlamp.com/pub/a/onlamp/2001/03/20/aboutSQL.html

das Wichtigste zu erstellen ist folgende:

Der Schlüsselindikator für einen möglichen Bedarf für Eine Eins-zu-Eins-Beziehung ist eine Tabelle, die Felder enthält, die nur für eine bestimmte Teilmenge der Datensätze in dieser Tabelle verwendet werden.

1

Ich habe dies getan, um Sperren/Blockierung zu verhindern, setzen Sie die schweren Spalten in einer Tabelle lesen die Aktualisierung schweren Spalten in einer anderen, arbeitete wie ein Charme. Viele große fette Update-Transaktionen verlangsamten viele Lesevorgänge.

0

Eins - zu Null-oder-Eins-Beziehungen sind üblich und vom optionalen zum obligatorischen verknüpft - das Beispiel in http://onlamp.com/pub/a/onlamp/2001/03/20/aboutSQL.html ist von dieser Art, nicht eins zu eins. Typ-/Subtyprelationen können so implementiert werden.

Eins-zu-Eins-Beziehungen treten auf, wenn jede eine klare, aussagekräftige Entität darstellt, die in einem anderen Kontext in einer anderen Beziehung stehen kann und eine geringfügige Änderung der Anforderungen die Kardinalität der Beziehung ändern kann. Es ist willkürlich, welche Links zu welchen, so dass es am besten ist, eins zu wählen, um optional zu sein und zu Eins zu Null oder Eins zu konvertieren.

Verwandte Themen