08. januar 2004 - 00:19Der er
6 kommentarer og 2 løsninger
5000 kolonner i mysql
Hi rødder
Jeg har brug for omkring 5000 kolonner i en mysql tabel , jeg syntes jeg når grænsen ved de omkring 3300 , kan jeg på en eller anden måde have en tabel som opfører sig som om den har 5000 kolonner ??
Når nu du har mange kolonner lyder det som om du også kunne risikere at have mange tupler. Hvis du har det er razor's løsning ikke attraktiv så længe performance betyder noget. Forstil dig, at du har 1000 tupler og 5000 kolonner. Det giver 5 mio. tupler, og skal de joines med en eller flere tabeller, bliver der seriøst tale om nogle kombinationsmuligheder - lige sådan noget MySQL er dårligst til, hvis endelig vi skal nævne noget. I hvert fald skal du satse på at have god CPU-kraft og masser af RAM (absolut minimum 1 GB, gerne 4).
Men nej, 5000 kolonner er ikke muligt. MySQL 3.23 tillader 3398 kolonner, og MySQL 4.* tillader 2599. Nu lyder det også ret vildt med 5000 kolonner, normalt skal der en temmelig hæftig applikation til for at det er nødvendigt. Men er du sikker op på at database-designet er som det skal være, vil det nok være mest optimalt at oprette to tabeller, som du spreder kolonnerne ud over. Når du select'er, joiner du bare de to tabeller på den samlede tuples id.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.