MySQL 사용 TEXT/BLOB 타 입의 지식 포인트 상세 설명
TEXT 와 BLOB 가족 간 의 차이 점 은 BLOB 형식 이 바 이 너 리 데 이 터 를 저장 하고 정렬 규칙 이나 문자 집합 이 없 으 며 TEXT 형식 은 문자 집합 이나 정렬 규칙 이 있 습 니 다.솔직히 중국 어 를 저장 하려 면 TEXT 를 선택한다.
질문
Strict Mode 에서 기본 값 을 설정 할 수 없습니다.그렇지 않 으 면 default 값 이 잘못 되 었 을 수 없습니다.
mysql> create table `test`.`text_blob`(
-> `a_text` text DEFAULT ' ' ,
-> `b_blob` blob
-> );
ERROR 1101 (42000): BLOB/TEXT column 'a_text' can't have a default value
원인:https://www.jb51.net/article/181667.htmselect @@sql_mode;//보기 모드
trict Mode 아래 에 다음 과 같은 제한 이 있 습 니 다.
1).not null 필드 에 null 값 삽입 은 지원 되 지 않 습 니 다.
2).자가 성장 필드 삽입 은 지원 되 지 않 습 니 다.null 값 을 삽입 할 수 있 습 니 다.
3).text 필드 에 기본 값 이 있 는 것 은 지원 되 지 않 습 니 다.
정렬
MySQL 은 TEXT 와 BLOB 열 을 정렬 합 니 다.다른 유형 과 다 릅 니 다.각 열의 맨 앞 max 만 정렬 합 니 다.sort_전체 문자열 정렬 이 아 닌 length 바이트 입 니 다.
기본 값 은 1024 이 며 설정 파일 을 통 해 수정 할 수 있 습 니 다.
mysql> SHOW VARIABLES LIKE 'max_sort_length';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_sort_length | 1024 |
+-----------------+-------+
1 row in set (0.00 sec)
4.접두사 색인 만 들 기일반적으로 시작 하 는 일부 문 자 를 색인 으로 설정 하면 색인 공간 을 크게 절약 하여 색인 효율 을 높 일 수 있다.
alter table table1 add key (text1(1024));
지식 포인트 확장:MySQL 필드 디자인 규범 은 TEXT/BLOB 데이터 형식 을 사용 하지 않도록 합 니 다.
설명
방학 동안 시간 이 있 으 면 표 의 디자인 을 많이 볼 수 있 고 많은 문제점 을 발견 했다.오래된 시스템 에 백 개의 필드 가 있 는데 그 안에 대량의 mediumtext 가 포함 되 어 있 고 500 만 이 안 되 는 데 이 터 량 이 있 으 며 개발 규범 에 500 만 개의 근 거 를 초과 하지 말 라 는 요구 가 있다.시계 가 차지 하 는 디스크 공간 120 G 를 살 펴 보 니 큰 시계 임 에 틀림없다.처음에 디자인 할 때 디자인 을 고려 한 적 이 없다.한 마디 로 접속 해서 쓸 수 있 으 면 돼,상관 없어.
2.MySQL 규범
1.단일 표 는 500 만 개의 기록 을 초과 해 서 는 안 되 고 평가 표 가 차지 하 는 디스크 공간 은 50G 를 초과 해 서 는 안 되 며 그렇지 않 으 면 최적화,분 표 등 을 고려 해 야 한다.
2.text 필드 형식 을 사용 하지 않 습 니 다.필요 하 다 면 단독 디자인 표 가 필요 합 니 다.
3.text 필드 형식 을 사용 하지 않 는 이유
1.성능 이 매우 나 쁘 고 정렬 등 작업 을 할 때 메모리 임시 표를 사용 할 수 없 으 며 디스크 임시 표를 사용 하여 진행 해 야 합 니 다.
2.TEXT 또는 BLOB 형식 은 접두사 색인 만 사용 할 수 있 고 MySQL 은 색인 필드 의 길 이 를 제한 합 니 다.
4.해결 방법
규범 을 정 하고 엄 격 히 집행(집행 하기 어렵다)한다.한두 개의 DBA 는 몇 십 수백 개의 업무 시스템,몇 만 개의 표,수백 만 개의 필드 가 모든 표 와 필드 의 인공 심 사 를 통과 하 는 것 은 불가능 하 다.결국은 스마트 화 된 심사 시스템 에 의존 해 야 한다!
여기 서 MySQL 사용 TEXT/BLOB 유형 에 대한 지식 에 대한 자세 한 내용 을 소개 합 니 다.더 많은 MySQL 사용 TEXT/BLOB 유형 에 관 한 몇 가지 주의 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Redash를 사용할 때 몰랐던 SQL을 쓰는 법을 배웠습니다.최근 redash에서 sql을 쓸 기회가 많고, 이런 쓰는 방법이 있었는지와 sql에 대해 공부를 다시하고 있기 때문에 배운 것을 여기에 씁니다. Redash란? 월별로 데이터를 표시하고 싶습니다 주별로 데이터를 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.