2009-11-14 3 views
0

거대한 양의 기사 나 기사가있는 곳에서 기사 텍스트의 데이터베이스 구조를 만들 때 어떤 점이 더 좋을까요? 그리고 왜?MySQL의 텍스트 저장소?

어떤 경우에는 장점이나 단점이 있습니까?

아래 데이터 유형 중 하나를 사용하여 MySQL 데이터베이스에 대한 기사 텍스트를 보관할 생각이었습니다.

VARCHAR 
TEXT 
MEDIUMTEXT 
LONGTEXT 

답변

5

Documentation of MySQL에서 참조하시기 바랍니다, 이러한 유형의 차이점 설명이있어.

  • 이 VarChar [1-어떤 (65535에서 최대)]
  • : 텍스트 필드는 시스템 정의 크기가 동안

    귀하의 질문에 대답하는 그러나

    은 VARCHAR는, 사용자 정의 길이의 필드

  • TinyText 255 (2^8 - 1)의
  • 텍스트 65535 (2^16 - 1)의
  • MEDIUMTEXT 16M (2^24 - 1)의
  • LONGTEXT 4G (2^32 - 1)의

그래서 저는 255보다 작은 필드가 필요할 때마다 VarChar를 사용합니다.

+1

VARCHAR은 MySQL 5.0.3 이후 65535까지 올라갈 수 있습니다. – nickf

1

텍스트가 길어지면 TEXT를 선택하는 것이 좋습니다. 전체 텍스트 검색 기능을 원하면 필드에 FULLTEXT 색인을 설정하십시오. MyISAM 형식의 테이블이 필요합니다. 자세한 내용은 여기를 참조하십시오. http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html

0

VARCHAR 필드와 TEXT 필드의 중요한 차이점은 저장 방법입니다. VARCHAR 필드는 자체 행에 저장되므로 MySQL 최대 행 크기 제한 인 65,535 바이트가 적용됩니다. TEXT 필드는 개별적으로 저장되므로 잠재적으로 크기가 커질 수 있습니다. 그러나이 필드를 읽으면 더 느리게 만들어집니다.

소량의 텍스트에는 항상 VARCHAR을 사용하고 많은 양의 데이터를 저장해야하는 경우에는 TEXT를 예약하는 것이 좋습니다.

TEXT 필드를 사용하는 경우 쿼리가 더 빨라지므로 필요하지 않으면 SELECT 쿼리에서 제외해야합니다.