• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

BINARY | VARBINARY czy CHAR | VARCHAR - kiedy używać, jakie mają zastosowanie?

Object Storage Arubacloud
+1 głos
1,198 wizyt
pytanie zadane 4 września 2016 w SQL, bazy danych przez Witold_Dz Nowicjusz (160 p.)
Witam!

Kiedy używać varbinary, a kiedy varchar? Czym one się różnią z punktu widzenia wydajności?

Prosiłbym o jakiś przykład zastosowania jednego i drugiego.

Pozdrawiam.

1 odpowiedź

+1 głos
odpowiedź 4 września 2016 przez Thomas Frost Bywalec (2,540 p.)
Cześć,

​Oto czym się charakteryzują:
​binary - ciąg bitów, może służyć do przechowywania jakiegoś pliku (np. obrazu), funkcjonuje jako string
​varbinary - to samo co wyżej, ale ze zmienną ilością bitów (a nie stałą, jak wyżej), funkcjonuje jako string
​varchar - string (tekst) o zmiennej długości

​Binary używasz, kiedy chcesz przechować długi tekst (string - może ulegać zmianie, ale nie zmianie długości), varbinary, kiedy chcesz przechować długi tekst, który może ulegać zmianie długości, natomiast varchar nadaje się do przechowywania tekstu (np. do 255 znaków).

​Pozdrawiam,
​Tomek
komentarz 5 września 2016 przez Witold_Dz Nowicjusz (160 p.)

Dzięki za odpowiedź!

To wiem, jednak chodzi mi o co innego...

Przykład:

1.Załóżmy, że chcemy przechowywać komentarze - do powiedzmy 250 znaków.

2.Przechowamy wpis blogowy do 6 000 znaków.

3.Imię - do, no, 20 znaków.

Jak widać, są to napisy o zmiennej długości.

I teraz:

Jakie są plusy i minusy przechowywania tych stringów jako varbinary, a jakie jako varchar?

Dodatkowo czytałem na tym blogu

http://www.brandonsavage.net/designing-databases-picking-the-right-data-types/

, że trzymanie w bazie danych np. zdjęć, mp3 jest złe. Czy to prawda?
 

 

 

 

komentarz 5 września 2016 przez Thomas Frost Bywalec (2,540 p.)
Cześć,

​1 - varchar
2 - varbinary
3 - varchar

​Tak, trzymanie zdjęć i mp3 to zły pomysł (z powodów prawnych również!). Raczej powinno się je trzymać w katalogach i używać ftp.
​Varchar'y działają szybciej, zajmują mniej miejsca.

Pozdrawiam,
Tomek
komentarz 5 września 2016 przez Witold_Dz Nowicjusz (160 p.)
Dziękuję za odpowiedź!

Jako, że pewnie jesteś jeszcze w tej chwili na forum, to dopytam:

Dlaczego w 2 wypadku varbinary, skoro varchar jest lepszy? Oba przecież mogą przechować kilka razy więcej?
komentarz 5 września 2016 przez Thomas Frost Bywalec (2,540 p.)
Cześć,

​Po prostu varbinary lepiej sobie radzi z długimi stringami - tak naprawdę to zależy od wielu rzeczy (może się okazać, że będzie lepszy varchar). Ciężko powiedzieć po samej długości gdzie powinno się używać varchar a gdzie varbinary, raczej to zależy od ilości tych danych, dostępu do nich (jak często itd.).

https://dev.mysql.com/doc/refman/5.7/en/char.html
https://dev.mysql.com/doc/refman/5.7/en/binary-varbinary.html
https://dev.mysql.com/doc/refman/5.7/en/column-count-limit.html

Pozdrawiam,
Tomek
komentarz 6 września 2016 przez Witold_Dz Nowicjusz (160 p.)
Rozumiem - to nie takie proste...

Dzięki za informacje!

Podobne pytania

0 głosów
2 odpowiedzi 325 wizyt
pytanie zadane 22 listopada 2019 w PHP przez Grzegorz Mikina Dyskutant (8,060 p.)
0 głosów
1 odpowiedź 288 wizyt
pytanie zadane 23 maja 2019 w PHP przez manager96 Bywalec (2,050 p.)
0 głosów
1 odpowiedź 468 wizyt
pytanie zadane 16 maja 2019 w PHP przez manager96 Bywalec (2,050 p.)

92,576 zapytań

141,426 odpowiedzi

319,651 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...