Nejdřív tabulka. Číslo říká kolik řádků se vlezlo do tabulky, kde bylo v řádku vždy 1 hodnota int a 6 hodnot string – všechny o stejné délce řetězce(délka dostupného pole mohla být vyšší). Prvně se uložily délky počtu v datovém typu bez Var, a když poté se dělalo totéž s Var datovým typem, kdy se do toho řetězce vygeneroval nový řetězec, ale se stejnou délkou jako text na stejném indexu, do kterého bylo uloženo když se vytvářely datové prvky bez Var.
Pokud v bez Var už by prvky nestačily, vygeneruje se nové číslo, které bylo v rozsahu mezi maximální a minimální délkou. Toto ale neplatilo u datových typů Text a NText, kdy vždy byla fixní velikost. Limit souboru .mdf byl 30 MB, ihned co se DB s jedinou tabulkou přehoupla přes 30 MB hranici, řádky se přestaly přidávat.
Následuje tabulka, ve které je počet takových řádků, který se vešel do prvků NText a NVarChar. Pro typ NChar se mi nepodařilo uložit ani jeden řádek z důvodu chyby “
Index ‚PK__Koc_Phot__3214EC27075BC5CD‘ row length exceeds the
maximum permissible length of ‚8060‘ bytes.” které vůbec nerozumím.
| Maximální délka | NChar | NVarChar | Hodnota změny | Procento změny |
| 20 | 109249 | 194664 | +85415 | +43,8 |
| 40 | 54625 | 104076 | +49451 | +42,8 |
| 60 | 37555 | 70415 | +32860 | +46,6 |
| 2000 | 1752 | |||
| 4000 | 864 |
Princip výpočtu:
Procento změny = (NVarChar – NChar) / NVarChar posunuté o 2 místa doprava
Hodnota změny = Procento změny * NVarChar nebo NVarChar – NChar
| Fixní délka řetězce | NText | Text | Hodnota změny | Procento změny |
| 20 | 41761 | 41761 | 0 | 0 |
| 40 | 22131 | 41761 | +19630 | +47 |
| 60 | 18341 | 41761 | +23420 | +56 |
| 2000 | 1111 | 1627 | +516 | +31,7 |
| 4000 | 564 | 1111 | +547 | +49,2 |
| 6000 | 378 | 570 | +192 | +33,6 |
| 10000 | 228 | 423 | +195 | +46 |
| 1000000 | 3 | 5 | +2 | +40 |
Pro datové typy VarChar a Char tu nemám srovnání, protože je nepovažuji za až tak důležité, mám tu pouze výsledek hodnot které dosáhly u typu VarChar protože Char se mi nepodařilo zprovoznit ani s jednou z těchto hodnot – 6000, 4000, 2000:
Do souboru VarChar_6000 bylo zapsáno 1072 řádků.
Co se týče přetáhnutí velikosti 30MB, tak to se podařilo pouze 2 souborům a sice Text_1000000.mdf na 32MB rovných a NText_1000000.mdf na rovných 38MB. Holt tato DB ani žádná jiná není určena na ukládání takto dlouhých řetězců.
Zajímavé hodnoty lze ale pozorovat u souborů Logu(*.ldf). Zatímco všechny DB měly soubor logu okolo 1MB, tak tyto 3 výjimky měly soubor o velikosti 9 nebo dokonce 19MB:
NText_10000.ldf – 9
NText_1000000.ldf – 19
Text_1000000.ldf – 9
Následuje tabulka porovnání datových SQL typů NText a Text:
Na malé hodnoty do 2000 znaků se nejvíce hodí datový typ
NVarChar , na delší pak
Text . Stejně je ale nejlepší pokud zápasíte o každý byte na databázi hostingu ukládat dlouhé texty do txt souboru například, pokud je nepotřebujete mít z nějakého důvodu v DB(například indexace).