Hallo,
ich brauche mal eure Meinung.
Ich habe die zwei Datenbanktabellen User und Video, mit denen ich sehr viele Verknüpfungen aufbauen muss. Beide Tabellen haben aktuell einen Primary als CHAR(32) und CHAR(11).
Meine Frage:
Soll ich bei beiden Tabellen extra eine Spalte id (autoincrement INT) ergänzen, damit ich dann die Tabellen über ein Integer verknüpfe oder kann ich ohne Probleme auch die aktuellen Primaries (CHARs) verwenden? Die extra ID Spalte wäre dann nur für Relationen, sonst brauch ich die gar nicht.
Es könnte möglich sein, dass einige der Tabellen in den nächsten Jahren die Millionen Zeilen erreichen werden und ich möchte jetzt schon vorbeugen, dass die Tabellen dann nicht zu langsam werden, weil ich Zählungen und Vergleiche auf CHARs mache?
Weiß jemand, ob CHAR(32) bzw CHAR(11) bedeutend langsamer ist als Integer. Vom Speicherverbrauch her würde ja glaub ich ein CHAR(4) einem Integer entsprechen.
Gruß, Tommy
ich brauche mal eure Meinung.
Ich habe die zwei Datenbanktabellen User und Video, mit denen ich sehr viele Verknüpfungen aufbauen muss. Beide Tabellen haben aktuell einen Primary als CHAR(32) und CHAR(11).
Meine Frage:
Soll ich bei beiden Tabellen extra eine Spalte id (autoincrement INT) ergänzen, damit ich dann die Tabellen über ein Integer verknüpfe oder kann ich ohne Probleme auch die aktuellen Primaries (CHARs) verwenden? Die extra ID Spalte wäre dann nur für Relationen, sonst brauch ich die gar nicht.
Es könnte möglich sein, dass einige der Tabellen in den nächsten Jahren die Millionen Zeilen erreichen werden und ich möchte jetzt schon vorbeugen, dass die Tabellen dann nicht zu langsam werden, weil ich Zählungen und Vergleiche auf CHARs mache?
Weiß jemand, ob CHAR(32) bzw CHAR(11) bedeutend langsamer ist als Integer. Vom Speicherverbrauch her würde ja glaub ich ein CHAR(4) einem Integer entsprechen.
Gruß, Tommy