Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL двоичен срещу двоичен набор от символи char

Няма разлика.

Има обаче едно предупреждение, ако съхранявате низ.

Ако искате да съхранявате само масив от байтове или други двоични данни, като поток или файл, тогава използвайте двоичния тип, тъй като за това са предназначени.

Цитат от ръководството за MySQL :

Така че технически няма разлика.

Въпреки това, когато съхранявате низ, той трябва да бъде преобразуван от низ в байтови стойности с помощта на набор от знаци. Решението е или да направите това сами преди MySQL сървъра, или да оставите MySQL да го направи вместо вас. MySQL ще работи с чрез прехвърляне на низ към BINARY използвайки наборите от символи BIN.

Ако искате да съхраните кодирането в друг формат, да приемем, че имате бизнес изискване, което гласи, че трябва да използвате 4 байта на знак (MySQL не прави това по подразбиране), тогава можете да използвате БИНАРЕН НАБОР НА СИМВОЛИ към текстова колона и извършете сами кодирането на набора от знаци.

Също така си струва да прочетете The BINARY и VARBINARY Видове от ръководството на MySQL, тъй като в него се описва важна информация, като допълване.

Резюме: Няма техническа разлика, тъй като едното е синоним на другото. Според мен има логичен смисъл да се съхраняват двоични низове в типове данни, които обикновено държат низ, като се използва CHARACTER SET BINARY и да съхранявате байтови масиви/потоци и т.н. в BINARY полета, които не могат да бъдат представени чрез трансформиране на данните чрез набор от знаци.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Уеб приложението spring-boot губи възможността да се свързва с MySQL / RDS след известно време

  2. Добавяне на текст към базата данни

  3. Коя SQL заявка е по-добра, MATCH AGAINST или LIKE?

  4. уверете се, че резултатът от метода за извличане на PDO false е грешка или празен резултат

  5. JDBC винаги тества последния ред на MySQL таблицата?