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

Кой DATATYPE е по-добре да се използва TEXT или VARCHAR?

Зависи за какво го използвате. Мразя да давам такъв общ отговор, но е вярно. Като цяло, опитайте се да получите възможно най-специфичен тип данни. Ако вашите низове никога няма да надхвърлят някаква горна граница от знаци, тогава използвайте VARCHAR защото ще бъде малко по-ефективно. Ако имате нужда от повече място, използвайте TEXT . Ако не сте сигурни колко място ще заеме вашият текст, вероятно трябва да използвате TEXT; разликата в производителността не е много голяма и е по-добре да бъдете надеждни, отколкото да рискувате да го промените по-късно, когато вашите изисквания се променят. Само моите два цента.

В коментарите Pitarou посочва, че ако MySQL създаде временна таблица за вашата заявка (вижте това ), TEXT колоните няма да се съхраняват в паметта и ще трябва да се четат от диска, което е много по-бавно. (Източник , долната част на страницата.) Това обаче не би трябвало да има значение за повечето заявки.

В случай, че някой се чудеше как се сравнява PostgreSQL, намерих този показател това показва, че CHAR, VARCHAR и TEXT се представят еднакво добре. Така че, ако използвате Postgres, няма значение какъв тип използвате.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Грешка в MySQL:#1142 - командата SELECT е отказана на потребителя

  2. Как да задам character_set_database и collation_database на utf8 в my.ini?

  3. Еквивалент на explode() за работа с низове в MySQL

  4. MySQL | Не можете да посочите целева таблица 'a' за актуализация в клаузата FROM

  5. Работа с MyISAM в MySQL