Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MYSQL] int/tinyint
bmL
post
Post #1





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Proste pytanko:
chcę przechować w bazie danych informację typu boolean ale może to być równie dobrze 1/0 i zastanawiam się w jakim polu lepiej takie dane przechowywać jako, że nie znalazłem czegoś takiego jak boolean dla bazy danych zastanawiają mnie 2 opcje:
- int(1)
- tinyint(1)
jeżeli się nie mylę to pomimo, że w tym wypadku ich zakres liczb jest taki sam to int będzie zajmować 4 bajty a tinyint 1 bajt tak?


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
Go to the top of the page
+Quote Post
kwiateusz
post
Post #2


Admin Techniczny


Grupa: Administratorzy
Postów: 2 071
Pomógł: 93
Dołączył: 5.07.2005
Skąd: Olsztyn




http://dev.mysql.com/doc/refman/5.0/en/num...e-overview.html

Cytat
BOOL, BOOLEAN

These types are synonyms for TINYINT(1). A value of zero is considered false. Non-zero values are considered true


czyli mozesz podac jako typ pola bool i podczas tworzenia bazy mysql sam zamieni to na tinyint smile.gif
Go to the top of the page
+Quote Post
bmL
post
Post #3





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Ahha, dzięki.
Ale ciągle mnie zastanawia czy int(1) zajmuje na pewno 4 bajty? w końcu rozmiar zmiennej zależy chyba od jej zakresu liczb a w tym przypadku będzie to 0-9.


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
Go to the top of the page
+Quote Post
kwiateusz
post
Post #4


Admin Techniczny


Grupa: Administratorzy
Postów: 2 071
Pomógł: 93
Dołączył: 5.07.2005
Skąd: Olsztyn




tinyint zajmuje 1 bajt i ma zakres -127 do 127 ew 0-255, a int rzeczywiscie zajmuje 4 bajty wiec stosowanie int to marnowanie 3 bajtow na kazdym rekordzie
Go to the top of the page
+Quote Post
webdice
post
Post #5


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Cytat(bmL @ 11.07.2008, 22:20:51 ) *
Ahha, dzięki.
Ale ciągle mnie zastanawia czy int(1) zajmuje na pewno 4 bajty? w końcu rozmiar zmiennej zależy chyba od jej zakresu liczb a w tym przypadku będzie to 0-9.


Tu nie ma znaczenia czy to będzie jedna cyfra czy będzie ich więcej, w bazie danych dany rekord będzie zajmował określoną ilość miejsca nawet gdy jest pusty.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 02:06