Dlaczego tak wielu programistów ustawia varchar na 254, a nie 255 podczas tworzenia tabel MySQL?MySQL: dlaczego varchar (254), a nie varchar (255)?
Dowód, że tak się dzieje: mysql varchar 254
Dlaczego tak wielu programistów ustawia varchar na 254, a nie 255 podczas tworzenia tabel MySQL?MySQL: dlaczego varchar (254), a nie varchar (255)?
Dowód, że tak się dzieje: mysql varchar 254
pola varchar wymaga n + 1 bajtów pola mniejsza niż lub równa 255 Wymagana n + 2 bajtów pola> 255
http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
ramę powinno być ustawione na 255, zakładam, że deweloperzy sądzą, że zaoszczędzą dodatkowy bajt od 254, ale 255 jest standardowym
Zgadzam się, mówię, że 255 ma rację, a nie 254. To nie ma naprawdę znaczenia zbyt wiele teraz. Kiedy pojawił się pierwszy album, a miejsce na dysku twardym było bardzo ograniczone, byłby to duży problem. – Keith
Połowa prawda: zależy to od silnika pamięci masowej. To prawda, że MyIsam, nie tyle dla InnoDB, nie zna się na pamięć innych silników. – Konerak
Twoje zapytanie Google już dawało ci wskazówki. Jednym z pierwszych hitów to:
https://www.vbulletin.com/forum/project.php?issueid=32655
zasadzie mówi się, że FULLTEXT
indeksy VARCHAR(255)
wymagają dwukrotnie przestrzeń indeksu VARCHAR(254)
FULLTEXT. I jeszcze kilka innych nadęść.
Myślę, że jest to o wiele ważniejsze niż zapisanie jednego bajtu w tabeli danych.
gud odpowiedź, wreszcie poznałem jej znaczenie, thanx za udostępnienie go. –
Pamiętaj, że to NIE wystarcza, aby użyć 254 varchar zamiast 255 varchar. Możesz po prostu utworzyć indeks, który będzie zawierał 254 znaki zamiast 255 - w ten sposób twoja kolumna będzie zawierała wszystkie potrzebne dane, a indeks nie zostanie nadęty. Ponadto, ten "błąd" powinien zostać zgłoszony zespołowi serwera MySQL, aby mógł zbadać i naprawić lub wyjaśnić zamieszanie. Zrzuty ekranu "phpMyAdmin" w tym postu na vbulletin nie dają mi pewności ... – Konerak
@Konerak Możesz sam przeprowadzić kilka eksperymentów i zgłoś wyniki. Jednakże: nawet gdyby to "zachowanie" (czy to błąd, czy nie) zostało naprawione _nerw_, zwyczaj używania limitu 254 pozostanie na zawsze przez długi czas. Ludzie są w ten sposób. –
Może niektórzy boją się naprawdę do końca! Życie na krawędzi! :) –
@Jason_vorhees: Widziałem również varchar (254) i zastanawiałem się, jaki był proces decyzyjny. Zapisuję to jako "nie było żadnego, jest to arbitralna głupota/niedbalstwo", ale jestem otwarty na bycie niewłaściwym. Zainteresowany usłyszeć odpowiedź na to. – tenfour
Nie jestem z tych programistów –