데이터 베이스 MySQL 튜토리얼 MySQL中VARCHAR和CHAR格式数据的区别

MySQL中VARCHAR和CHAR格式数据的区别

Jun 07, 2016 pm 02:58 PM
char m varchar

CHAR与VARCHAR类型类似,但它们保存和检索的方式不同。CHAR有固定的长度,而VARCHAR属于可变长的字符类型。它们最大长度和是否尾

区别

CHAR与VARCHAR类型类似,但它们保存和检索的方式不同。CHAR有固定的长度,而VARCHAR属于可变长的字符类型。它们最大长度和是否尾部空格被保留等方面也不同。在存储和检索过程中不进行大小写转换。

下面的表格显示了将各种字符串值保存到CHAR(4)和VARCHAR(4)列后的结果,说明了CHAR和VARCHAR之间的差别:

值 CHAR(4) 存储需求 VARCHAR(4) 存储需求

'' ' ' 4个字节 '' 1个字节

'ab' 'ab ' 4个字节 'ab' 3个字节

'abcd' 'abcd' 4个字节 'abcd' 5个字节

'abcdefgh' 'abcd' 4个字节 'abcd' 5个字节

从上面可以看得出来CHAR的长度是固定的,不管你存储的数据是多少他都会都固定的长度。而VARCHAR则处可变长度但他要在总长度上加1字节,这个用来存储字符长度(如果声明的长度超过255,,则使用2个字节)。所以实际应用中用户可以根据自己的数据类型来做。

请注意,上表中最后一行的值只适用不使用严格模式时;如果MySQL运行在严格模式,超过列长度的值不被保存,并且会出现错误。

从CHAR(4)和VARCHAR(4)列检索的值并不总是相同,因为检索时从CHAR列删除了尾部的空格。通过下面的例子说明差别:

mysql> CREATE TABLE test(a VARCHAR(4), b CHAR(4));
mysql> INSERT INTO test VALUES ('ab ', 'ab ');
mysql> SELECT CONCAT(a, '+'), CONCAT(b, '+') FROM test;

结果如下:

CONCAT(a, '+') CONCAT(b, '+')

ab + ab+

从上面可以看出来,由于某种原因CHAR有固定长度,所以在处理速度上要比VARCHAR快很多,但是相对浪费存储空间,所以对存储不大,但在速度上有要求的可以使用CHAR类型,反之可以用VARCHAR类型来实现。
建议

MyISAM存储引擎 建议使用固定长度,数据列代替可变长度的数据列
INNODB 存储引擎 建议使用VARCHAR类型

MySQL InnoDB存储引擎锁机制实验

InnoDB存储引擎的启动、关闭与恢复

MySQL InnoDB独立表空间的配置

MySQL Server 层和 InnoDB 引擎层 体系结构图

InnoDB 死锁案例解析

MySQL Innodb独立表空间的配置

本文永久更新链接地址

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

AITO의 Wenjie M9 파노라마 스마트 플래그십 SUV 출시 임박 AITO의 Wenjie M9 파노라마 스마트 플래그십 SUV 출시 임박 Sep 26, 2023 pm 02:41 PM

9월 25일 뉴스에 따르면 화웨이 몰에서는 AITO의 Wenjie M9 차량 예약을 받기 시작했습니다. 이 차는 눈길을 사로잡는 기능을 갖춘 파노라믹 스마트 플래그십 SUV로 자리매김했다. 소비자는 5,000위안의 보증금만 지불하면 되며, 이는 최대 10,000위안의 최종 지불액을 상쇄하는 데 사용할 수 있습니다. 새 차는 확장 범위 버전과 순수 전기 버전의 두 가지 버전으로 제공됩니다. 가격은 50만~60만 위안 수준으로 고급 SUV 시장에서 경쟁력을 갖출 것으로 예상된다. Wenjie M9는 2023년 4분기에 공식 출시될 예정입니다. 구체적인 구성에 대한 정보는 아직 공개되지 않았습니다. M9 모델은 가족 중심의 디자인 언어를 채택한 것으로 이해됩니다. 공개된 두 장의 공식 사진을 보면 차량의 측면 라인이 매끄럽고, 도어 핸들도 히든 디자인을 채택해 차량 전체에 기술을 더한 것으로 보인다.

mysql에서 varchar 유형을 사용하여 날짜 비교, 정렬 및 기타 작업을 구현하는 방법 mysql에서 varchar 유형을 사용하여 날짜 비교, 정렬 및 기타 작업을 구현하는 방법 May 31, 2023 pm 01:49 PM

MySQL을 사용하는 동안 날짜는 일반적으로 날짜/시간, 타임스탬프 및 기타 형식으로 저장됩니다. 그러나 때로는 특별한 필요나 역사적 이유로 인해 날짜가 varchar 형식으로 저장됩니다. 함수 사용: STR_TO_DATE(str,format) STR_TO_DATE(str,format) 함수는 DATE_FORMAT() 함수의 역함수입니다. 문자열 str과 형식 문자열 형식을 사용합니다. STR_TO_DATE()는 형식 문자열에 날짜 및 시간 구성 요소가 포함되어 있거나 단어가 다음과 같은 경우 DATETIME 값을 반환합니다.

mysql에서 char과 varchar의 차이점은 무엇입니까 mysql에서 char과 varchar의 차이점은 무엇입니까 Sep 04, 2023 pm 02:16 PM

mysql에서 char과 varchar의 차이점은 다음과 같습니다. 1. CHAR는 고정 길이이고 VARCHAR은 가변 길이입니다. 2. CHAR 저장 및 검색 효율성은 높지만 VARCHAR 저장 및 검색 효율성은 높지 않습니다. 3. CHAR는 저장 공간을 차지합니다. , VARCHAR을 사용하면 저장 공간을 절약할 수 있습니다.

C 언어의 키워드: go도 그중 하나인가요? C 언어의 키워드: go도 그중 하나인가요? Mar 15, 2024 am 11:15 AM

C 언어의 키워드: go도 그중 하나인가요? C 언어를 학습하는 과정에서 우리는 프로그래밍에서 중요한 역할을 하는 다양한 키워드를 필연적으로 만나게 됩니다. 초보자의 경우 때때로 의심이 들 수 있습니다. 예를 들어 C 언어에 "go"라는 키워드가 있습니까? 다음으로 이 문제를 함께 살펴보겠습니다. 우선, C 언어는 매우 고전적인 프로그래밍 언어이며, 그 키워드는 오랫동안 정해져 있어 쉽게 바뀌지 않을 것이라는 점을 분명히 해야 합니다. C언어에서는

디지털 가상 통화 란 무엇입니까? 디지털 가상 통화를 어디에서 구매할 수 있습니까? 디지털 가상 통화 란 무엇입니까? 디지털 가상 통화를 어디에서 구매할 수 있습니까? Feb 14, 2025 pm 05:06 PM

cryptocurrency 또는 가상 통화라고도하는 디지털 가상 통화는 분산 디지털 통화입니다. 기존 통화와 달리 디지털 가상 통화는 중앙 은행이나 정부에 의해 제어되지 않지만 인터넷의 컴퓨터 네트워크를 통해 거래됩니다. 디지털 가상 통화의 보안은 복잡한 암호화 알고리즘에 의해 보장되므로 냉담한, 익명 성 및 글로벌 순환이 가능합니다. 디지털 가상 통화의 인기로 인해 구매 채널도 증가하고 있습니다.

CentOS7은 Jenkins에 cicd 서비스를 배포합니다. CentOS7은 Jenkins에 cicd 서비스를 배포합니다. Feb 20, 2024 am 08:30 AM

프로젝트 주소 https://www.jenkins.io/zh/호스트 이름 설정: hostnamectlset-hostnamejenkins 시간이 없는 개인화된 호스트 이름 echo"PS1='[e[37;1m][[e[36;40m][e [32 ;40m]u[e[33;40m]@[e[31;40m]h[e[34;40m]w[e[37;1m]]\$[e[m]'">>.bashrc가 닫힙니다. CentOS7 자체 방화벽 서비스 systemctldisablefirewalld&&systemctlstopfirewa

Huawei Smart Car M7: 9월에 새롭게 공개되어 운전 경험의 질이 향상되었습니다! Huawei Smart Car M7: 9월에 새롭게 공개되어 운전 경험의 질이 향상되었습니다! Aug 22, 2023 am 09:13 AM

Huawei 임원 Yu Chengdong은 오늘 개인 Weibo에서 Huawei의 새로운 스마트 자동차 M7에 대한 흥미로운 소식을 공개했습니다. 이 새로운 자동차는 9월에 공식 출시되어 소비자들에게 새로운 운전 경험을 선사할 것으로 예상된다고 Yu Chengdong은 Weibo에서 말했습니다. 운전 및 라이딩 경험 측면에서 큰 발전을 이루었습니다. 운전을 하든, 라이딩을 하든 확실히 개선되는 것을 느낄 수 있습니다. 차량의 시인성과 성능이 대폭 최적화되어 장거리 가족 여행에 적합합니다. 그는 또한 보다 편안한 라이딩 경험을 제공하기 위해 화웨이가 새로운 내부 및 외부 디자인에 많은 에너지를 투자했다고 언급했습니다. Huawei가 Huawei 스마트 자동차에 중점을 두고 있는 Yu Chengdong에 따르면 새로운 좌석은 더 부드럽고 더 편안하며 더 강력한 포장 특성을 갖추고 있어 승객이 여행 중에 더 나은 휴식을 취할 수 있습니다.

GIMOC의 신제품 출시: M3 및 M4 미니 콘솔이 강력한 데뷔를 했습니다! GIMOC의 신제품 출시: M3 및 M4 미니 콘솔이 강력한 데뷔를 했습니다! Aug 13, 2023 pm 03:45 PM

GIMOC은 오늘 사용자에게 더욱 강력한 컴퓨팅 성능과 더 많은 확장 옵션을 제공하기 위해 GIMOC M3(i5-12450H) 및 GIMOC M4(i9-11900H)라는 두 가지 새로운 미니 호스트 모델을 출시할 것이라고 발표했습니다. 최근 GIMOC는 최신 미니에 대한 소식을 발표했습니다. 콘솔. 두 가지 새로운 모델은 Gimoke M3과 Gimoke M4로, 다양한 사용자의 성능과 기능적 요구 사항을 충족하도록 설계되었습니다. GIMOK M3에는 12세대 Intel i5-12450H 프로세서가 탑재되어 있으며 듀얼 채널 DDR4 메모리 및 듀얼 확장 M.22280/M.22242PCIe4.0SSD를 지원합니다. GIMOK M4에는 듀얼 채널 DDR4 내부 메모리도 지원하는 11세대 Intel i9-11900H 프로세서가 탑재되어 있습니다.

See all articles