MySQL에 정의된 데이터 필드 유형은 데이터베이스 최적화에 매우 중요합니다.
MySQL은 숫자 값, 날짜/시간 및 문자열( 문자) 유형;
정수 유형
Int(N)
에서 N의 의미는 init를 정의합니다. (5) zerofill int(10)을 조인할 때 표시 너비가 일치하지 않아 임시 테이블이 나타날 수 있습니다.
N은 표시 너비가 N이지만 여전히 4바이트의 저장 공간을 차지한다는 의미이며, 저장 범위는 변경되지 않습니다.
>create table int_test(a int zerofill NOT NULL auto_increment, PRIMARY KEY (a)); >createtable int_test_4(a int(4) zerofill NOT NULL auto_increment, PRIMARY KEY (a)); >select * from int_test_4; +------------+ |a | +------------+ | 0001 | | 0002 | |2147483648 | +------------+ >select * from int_test; +------------+ |a | +------------+ |0000000001 | |0000000002 | |2147483648 | +------------+
부동 소수점 숫자 유형 정보: 1) 가능하면 사용하지 마세요. 2) 등호 비교 시나리오에서는 부동 소수점 숫자를 사용할 수 없습니다
enum
날짜 및 시간 유형
시간 값을 나타내는 날짜 및 시간 유형은 DATETIME, DATE, TIMESTAMP, TIME 및 YEAR입니다.
MySQL5.6은 연도(2)를 지원하지 않습니다.
날짜 유형 참고 사항
Timestamp, datatime은 MySQL5.6.5에서 현재 시간으로 자동 업데이트를 지원합니다. 현재 타임스탬프
날짜 변환: 캐스트(datatime_col을 DATE로)
> ;select now()+0;
5.6 US는
>select now(4),MICROSECOND(now(4)); +--------------------------+---------------------+ |now(4) |MICROSECOND(now(4)) | +--------------------------+---------------------+ |2016-04-16 08:50:01.6589 | 658900 | +--------------------------+---------------------+
를 지원합니다. timestamp는 5.6.6 이후 null을 지원합니다.
timestamp를 datetime으로 바꾸는 것이 좋습니다
문자열 유형
문자열 유형은 CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM 및 SET을 의미합니다. 이 섹션에서는 이러한 유형의 작동 방식과 쿼리에서 이를 사용하는 방법을 설명합니다.
문자 유형
varchar와 char의 차이점
Char는 고정 길이 유형이고, varchar는 가변 길이 유형입니다. 차이점은 char(M) 유형의 데이터 열에서 각 값이 M 바이트를 차지한다는 것입니다. 특정 길이가 M보다 작으면 MySQL은 오른쪽에 공백 문자를 추가합니다. (패딩 공백 문자는 검색 작업 중에 제거됩니다.) varchar(M) 유형 데이터 열에서 각 값은 해당 길이를 기록하는 데 충분한 바이트와 1바이트만 차지합니다. 즉, 총 길이는 L+1바이트입니다. ) varchar는 가변 길이 문자열을 저장합니다. 255바이트보다 작은 경우 길이를 저장하는 데 1바이트가 추가로 필요합니다(255바이트를 초과하면 2바이트가 추가로 필요함). 최대 길이는 65532바이트(모두 열 합계)입니다.
char는 고정된 길이로 저장되며, 읽을 때 뒤따르는 공백이 잘립니다. 최대 길이는 255자입니다. 1) CHAR(M)의 의미: 실제 할당된 길이는 M*문자 인코딩 길이 = 저장 공간 예: 255자가 저장되고 한자는 3바이트를 차지합니다. 255*3 = 765 총 765자 섹션2) varchar(N)
에서 N의 의미 varchar(5)와 varchar(200)은 hello를 저장하는 데 동일한 공간을 차지하지만 후자는 sorted
order by col은 고정 길이를 사용하여 열 길이를 계산하기 때문에 더 많은 메모리를 소비합니다(메모리 엔진의 경우에도 마찬가지입니다). 예:
권장사항:
보통 innodb 엔진인 MySQL을 사용합니다. innodb 엔진은 본질적으로 가변 길이 스토리지입니다.
행이 저장됩니다:
trx_id, row-id,rollback, file_pointer, null-flag, file1,....
innodb 스토리지 엔진은 varchar를 권장합니다
MyISAM과 같은 힙 테이블의 경우 Char가 더 빠릅니다. char의 고정 길이 할당이 더 빠릅니다
계산 예
실제 길이 계산을 설명하기 위해 두 가지 예를 들어보세요.
a) 테이블에
createtable t4(c varchar(N)) charset=gbk;
과 같이 정의된 varchar 유형이 하나만 있는 경우 N 여기서 값은 (65535-1-2)/2= 32766입니다.
1을 빼는 이유는 실제 행 저장이 두 번째 바이트부터 시작되기 때문입니다.
2를 빼는 이유는 varchar 헤더의 2바이트가 길이를 나타내기 때문입니다.
2로 나누는 이유는 문자 인코딩이 gbk이기 때문입니다.
b) 테이블이
createtable t4(c int, c2 char(30), c3 varchar(N)) charset=utf8;
으로 정의된 경우 여기 N의 최대값은 (65535-1-2-4-30*3)/3=21812
1을 빼고 2를 빼는 것은 위의 예와 같습니다.
이유는 다음과 같습니다. 빼기 4는 int입니다. c 유형은 4바이트를 차지합니다. char(30)이 90바이트를 차지하고 인코딩이 utf8이기 때문에
은 30*3으로 줄어듭니다.
위 내용은 MySQL 데이터 유형에 대한 몇 가지 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

在mysql中,可利用“ALTER TABLE 表名 DROP INDEX unique key名”语句来删除unique key;ALTER TABLE语句用于对数据进行添加、删除或修改操作,DROP INDEX语句用于表示删除约束操作。


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

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

WebStorm Mac 버전
유용한 JavaScript 개발 도구

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

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

뜨거운 주제



