Maximale Spaltenzahl

Hallo Jan,

da ist von DB zu DB unterschiedlich:

SQL-Server hat eine Maximale Zeilenlänge von 8KB, egal wieviele Spalten.
Informix (der gute alte Dynamic Server 7.31) hatt 255 Spalten. (Rat mal woher ich das weiß)
Oracle kann 32.000 Spalten. Das sollte reichen.
Du kannst halt mächtig optimieren, wenn Du die Spalten nach Anwendungsbereichen sortierst. Also die häufigen in eine Tabelle, die weniger oft benötigten in eine andere. Dadurch entlastest Du die DB. Wenn Du immer die volle Breite brauchst, sind zwei oder mehr Tabellen wegen des Joins teurer.

Gruß

Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,
ich soll eine Access-datenbank nach sql portieren um dann eine homepage damit zu füllen.
Nun stellt sich raus, dass eine Tabelle der access-datenbank ca 80 Spalten hat…
Das is mir bei sql bisher noch nicht begegnet - und nun stellt sich mir die Frage:
Wieviele Spalten darf/kann eine SQL db haben, UND wieviele Spalten machen bei einer Internetanwendung Sinn ?

Machts eher Sinn die Spalten auf 2-3 sinnvolle Tabellen zu splitten - oder kann ich das getrost so übernehmen ?

danke für Eure Tipps
Jan

Hi Jan,

die Technik wird mit 80 Spalten leicht fertig, der Anwender vielleicht auch, obwohl ich mir den entsprechenden Dialog gar nicht vorstellen mag. Mir ist allerdings in 30 Jahren noch keine Tabelle begegnet, die mehr als 30 Spalten hätte. Der Schnitt bei großen Datenbanken liegt bei 10 Spalten. EIn Überprüfen der Datenstruktur ist also gewiss angebracht.

Gruß Ralf

Hallo Jan,
also 80 Spalten sollte kein problem sein denke ich!

hängt ja auch ein bischen davon ab was für einen SQL server und Tabellen Format du verwendest.
meistens wird auf webservern MySQL angeboten.

ob du für deine anwendung 80 spalten brauchst oder nur weniger hängt
wirklich von deiner anwendung ab.

abspecken ist natürlich aus performance gründen immer gut :smile:
aber es hängt wirklich von deine anwendung ab.
wenns so viele felder braucht dann brauchts die halt.

gruss chris

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi!

Was ist an 80 Spalten so grausam? Warum wird der Designer so niedergeprügelt?

  1. Variante:
    Die Entität hat ganz einfach diese Menge von Ausprägungen - soll ich nun extra eine neue Tabelle mittels 1:1-Beziehung aufbauen, nur um die Spaltenanzahl nieder zu halten?

  2. Variante:
    parametrisierbare „Standardsoftware“; hier ist es aufgrund der (verschiedenen) Anforderungen ganz einfach nicht möglich, die Entitäten anders abzubilden

Grüße,
Tomh

Hi!

Was ist an 80 Spalten so grausam? Warum wird der Designer so
niedergeprügelt?

Wer prügelt denn hier den Designer nieder ? :smiley:
Ich stelle doch nur die Frage, ob die Zahl der Spalten auch für SQL und Internetverwendung Sinn macht :smile:

  1. Variante:
    Die Entität hat ganz einfach diese Menge von Ausprägungen -
    soll ich nun extra eine neue Tabelle mittels 1:1-Beziehung
    aufbauen, nur um die Spaltenanzahl nieder zu halten?

agree - bisher hab ich auch noch keine schlagenden Argumente bekommen, die mich zu einer Aufteilung veranlassen

mfg
Jan

Hi!

Wer prügelt denn hier den Designer nieder ? :smiley:
Ich stelle doch nur die Frage, ob die Zahl der Spalten auch
für SQL und Internetverwendung Sinn macht :smile:

Das war auch keine Feststellung auf Deine Frage, sondern auf einige Antworten hier … 80 Spalten, pah, die hat man ja noch ohne irgendwelche Hilfsmittel im Überblick :smile:

  1. Variante:
    Die Entität hat ganz einfach diese Menge von Ausprägungen -
    soll ich nun extra eine neue Tabelle mittels 1:1-Beziehung
    aufbauen, nur um die Spaltenanzahl nieder zu halten?

agree - bisher hab ich auch noch keine schlagenden Argumente
bekommen, die mich zu einer Aufteilung veranlassen

Und das, obwohl hier einige den Entwickler dieser Tabelle so hoch wie möglich hängen wollen? :wink:

Grüße,
Tomh

Lieber Jan,

bei einer Tabelle von 80 (!) Spalten müsste ich die Datenbank-Modellierfähigkeiten des Entwicklers anzweifeln. Vermutlich ist sie historisch immer mehr aus einer „Access-Bastellösung“ heraus gewachsen.
Wie bereits mehrere meiner werten Vorredner anmerken ist es technisch kein Problem; ob es fachlich und datentechnisch sinnvoll ist bleibt dahingestellt.
Ein einfaches Aufsplitten allein richt hier aber nicht aus, da dabei zunächst Verbindungen der Daten untereinander verloren gehen. Sinnvoller ist es, zu versuchen, diese Tabelle neu in mehrere Teile zu modellieren.
Gruss
Walter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]