>  기사  >  데이터 베이스  >  Backend.com MySQL 데이터베이스 비디오 튜토리얼 리소스 추천

Backend.com MySQL 데이터베이스 비디오 튜토리얼 리소스 추천

黄舟
黄舟원래의
2017-09-01 11:17:231648검색

"백엔드 네트워크 MySQL 데이터베이스 동영상 튜토리얼"은 데이터베이스의 개념을 소개하고, 추가, 삭제, 수정, 확인 등 데이터베이스에서 일반적으로 사용되는 몇 가지 기본 내용을 소개합니다. 주사 등

Backend.com MySQL 데이터베이스 비디오 튜토리얼 리소스 추천

강좌 재생 주소: http://www.php.cn/course/427.html

선생님의 강의 스타일:

선생님의 강의는 간단하고 깊이 있고 명확합니다. 논리적 사고력을 사용하여 학생들의 관심을 끌고 이성을 사용하여 교실 교육 과정을 제어합니다. 선생님의 강의를 들으면서 학생들은 지식을 배울 뿐만 아니라 사고력도 훈련받으며 선생님의 엄격한 학문적 태도에 영향을 받고 영향을 받습니다

이 영상에서 더 어려운 부분은 데이터 유형의 정의와 선택입니다 :

1 숫자 유형:

Mysql은 엄격한 데이터 유형(INTEGER, SMALLINT, DECIMAL, NUMBERIC) 및 대략적인 숫자 데이터 유형(FLOAT, REAL, DOUBLE PRESISION)을 포함하여 표준 SQL의 모든 숫자 유형을 지원합니다. 이 확장에. 확장 후에는 길이가 다른 3개의 정수인 TINYINT, MEDIUMINT, BIGINT가 추가되었고, 비트 데이터를 저장하기 위한 BIT 유형이 추가되었습니다.

INT 유형:

MySQL에서 지원되는 5가지 주요 정수 유형은 TINYINT, SMALLINT, MEDIUMINT, INT 및 BIGINT입니다. 이러한 유형은 대체로 동일하며 저장하는 값의 크기만 다릅니다.

MySQL은 데이터베이스에서 값을 검색할 때 값을 지정된 길이로 늘릴 수 있도록 선택적 표시 너비 표시기 형태로 SQL 표준을 확장합니다. 예를 들어, 필드 유형을 INT(6)로 지정하면 데이터베이스에서 검색할 때 6자리 미만의 숫자가 포함된 값이 자동으로 공백으로 채워집니다. 너비 표시기를 사용해도 필드의 크기나 저장할 수 있는 값의 범위에는 영향을 미치지 않습니다. 필드에 허용된 범위 밖의 숫자를 저장해야 하는 경우 MySQL은 저장하기 전에 가장 가까운 허용 범위의 끝 부분에 따라 숫자를 잘라냅니다. 또 다른 특별한 점은 MySQL이 잘못된 값을 테이블에 삽입하기 전에 자동으로 0으로 변경한다는 것입니다.

UNSIGNED 수정자는 필드에 양수 값만 포함하도록 지정합니다. 숫자의 양수 및 음수 부호를 저장할 필요가 없기 때문에 저장 중에 1 "비트"의 공간을 절약할 수 있습니다. 이렇게 하면 이 필드에 저장할 수 있는 값의 범위가 늘어납니다. ZEROFILL 수정자는 출력 값을 보완하기 위해 0(공백 아님)을 사용할 수 있음을 지정합니다. MySQL 데이터베이스가 음수 값을 저장하는 것을 방지하려면 이 수정자를 사용하십시오.

FLOAT, DOUBLE 및 DECIMAL 유형:

MySQL이 지원하는 세 가지 부동 소수점 유형은 FLOAT, DOUBLE 및 DECIMAL 유형입니다. FLOAT 숫자 유형은 단정밀도 부동 소수점 값을 나타내는 데 사용되고, DOUBLE 숫자 유형은 배정밀도 부동 소수점 값을 나타내는 데 사용됩니다. 정수와 마찬가지로 이러한 유형에는 디스플레이 너비 표시기 및 소수점 표시기 등의 추가 매개변수가 사용됩니다. 예를 들어, FLOAT(7,3) 문은 표시되는 값이 소수점 이하 3자리를 포함하여 7자리를 초과하지 않도록 지정합니다.

허용 범위보다 소수점 이하 자릿수가 많은 값의 경우 MySQL은 자동으로 가장 가까운 값으로 반올림한 후 삽입합니다. DECIMAL 데이터 유형은 매우 높은 정밀도가 필요한 계산에 사용됩니다. 이 유형을 사용하면 숫자 값의 정밀도와 계산 방법을 선택 매개변수로 지정할 수 있습니다. 여기서 정밀도는 해당 값에 대해 저장된 전체 유효 자릿수를 의미하고, 계산 방식은 소수점 이하 자릿수를 의미합니다. 예를 들어, DECIMAL(7,3) 문은 저장된 값이 7자리를 초과하지 않고 소수점 이하 3자리를 초과하지 않도록 지정합니다.

DECIMAL 데이터 유형의 정밀도 및 계산 방법 수정자를 생략하면 MySQL 데이터베이스는 이 데이터 유형으로 식별된 모든 필드에 대해 정밀도를 10으로, 계산 방법을 0으로 설정합니다. UNSIGNED 및 ZEROFILL 수정자는 FLOAT, DOUBLE 및 DECIMAL 데이터 유형과 함께 사용할 수도 있습니다. 그리고 그 효과는 INT 데이터 유형과 동일합니다.

1. CHAR 및 VARCHAR 유형:

CHAR 유형은 고정 길이 문자열에 사용되며 괄호 안에 크기 수정자로 정의되어야 합니다. 이 크기 수정자의 범위는 0-255입니다. 지정된 길이보다 큰 값은 잘리고, 지정된 길이보다 작은 값은 공백으로 채워집니다.

CHAR 유형은 BINARY 수정자를 사용할 수 있습니다. 비교 작업에 사용되는 경우 이 수정자는 CHAR가 기존의 대소문자 구분 방식이 아닌 이진 형식으로 작업에 참여하도록 합니다.

CHAR 유형의 변형은 VARCHAR 유형입니다. 가변 길이 문자열 유형이며 0-255 범위의 표시기도 있어야 합니다. CHAR과 VARCHGAR의 차이점은 MYSQL 데이터베이스가 이 표시기를 처리하는 방식입니다. CHAR는 이 크기를 값의 크기로 처리하고 길이가 충분하지 않은 경우 공백으로 채웁니다. 반면 VARCHAR 유형은 이를 최대값으로 처리하고 문자열을 저장하는 데 실제로 필요한 길이(문자열 자체의 길이를 저장하기 위한 1바이트 추가)를 사용하여 값만 저장합니다. 따라서 표시기 길이보다 짧은 VARCHAR 유형은 공백으로 채워지지 않지만 표시기보다 긴 값은 여전히 ​​잘립니다. VARCHAR 유형은 실제 내용에 따라 저장된 값의 길이를 동적으로 변경할 수 있으므로 필드에 필요한 문자 수가 확실하지 않은 경우 VARCHAR 유형을 사용하면 디스크 공간을 크게 절약하고 저장 효율성을 향상시킬 수 있습니다. BINARY 수정자를 사용할 때 VARCHAR 유형은 CHAR 유형과 동일합니다.

2. TEXT 및 BLOB 유형:

필드 길이 요구 사항이 255를 초과하는 경우 MySQL은 TEXT 및 BLOB의 두 가지 유형을 제공합니다. 이들은 모두 저장된 데이터의 크기에 따라 서로 다른 하위 유형을 갖습니다. 이러한 대용량 데이터는 텍스트 블록이나 이미지, 사운드 파일과 같은 바이너리 데이터 유형을 저장하는 데 사용됩니다. TEXT와 BLOB 유형 간에는 분류 및 비교에 차이가 있습니다. BLOB 유형은 대소문자를 구분하지만 TEXT는 대소문자를 구분하지 않습니다. 다양한 BLOB 및 TEXT 하위 유형에는 크기 수정자가 사용되지 않습니다. 지정된 유형에서 지원하는 최대 범위보다 큰 값은 자동으로 잘립니다.

3. 날짜 및 시간 유형:

날짜 및 시간 유형 값을 처리할 때 MySQL에는 선택할 수 있는 5가지 데이터 유형이 제공됩니다. 단순 날짜 및 시간 유형과 혼합 날짜 및 시간 유형으로 나눌 수 있습니다. 필요한 정밀도에 따라 각 하위 유형 내에서 하위 유형을 사용할 수 있으며, MySQL에는 다양한 입력 형식을 표준 형식으로 변환하는 기능이 내장되어 있습니다.

1. DATE, TIME 및 TEAR 유형:

MySQL은 DATE 및 TEAR 유형을 사용하여 간단한 날짜 값을 저장하고 TIME 유형을 사용하여 시간 값을 저장합니다. 이러한 유형은 구분 기호가 없는 문자열이나 정수 시퀀스로 설명할 수 있습니다. 문자열로 설명하는 경우 DATE 유형의 값은 구분 기호인 하이픈으로 구분되어야 하며, TIME 유형의 값은 구분 기호인 콜론으로 구분되어야 합니다.

콜론 구분 기호가 없는 TIME 유형 값은 MySQL에서 타임스탬프가 아닌 기간으로 이해된다는 점에 유의해야 합니다.

MySQL은 날짜 연도의 두 숫자 값 또는 SQL 문에서 TEAR 유형으로 입력된 두 숫자의 값도 최대한 해석합니다. 왜냐하면 모든 TEAR 유형의 값은 4개의 숫자로 저장되어야 하기 때문입니다. MySQL은 2자리 연도를 4자리 값으로 변환하려고 시도합니다. 00-69 범위의 값을 2000-2069 범위로 변환합니다. 70-99 범위의 값을 1970-1979로 변환합니다. MySQL에서 자동으로 변환한 값이 요구사항에 맞지 않는 경우 4자리 연도를 입력하세요.

2. DATEYIME 및 TIMESTAMP 유형:

날짜 및 시간 데이터 유형 외에도 MySQL은 DATEYIME 및 TIMESTAMP라는 두 가지 혼합 유형도 지원합니다. 날짜와 시간을 단일 값으로 저장할 수 있습니다. 두 유형 모두 현재 날짜와 시간이 포함된 타임스탬프를 자동으로 저장하는 데 일반적으로 사용되며, 많은 수의 데이터베이스 트랜잭션을 수행해야 하고 디버깅 및 검토 목적으로 감사 추적을 설정해야 하는 애플리케이션에서 잘 작동할 수 있습니다. TIMESTAMP 유형의 필드에 값을 명시적으로 할당하지 않거나 null 값이 할당되는 경우. MySQL은 자동으로 시스템의 현재 날짜와 시간을 채웁니다.

3. 복합 유형:

MySQL은 SQL 사양을 확장하는 두 가지 복합 데이터 유형인 ENUM 및 SET도 지원합니다. 이러한 유형은 기술적으로는 문자열 유형이지만 다른 데이터 유형으로 처리될 수 있습니다. ENUM 유형은 컬렉션에서 하나의 값만 얻을 수 있도록 허용하고, SET 유형은 컬렉션에서 원하는 수의 값을 얻을 수 있도록 허용합니다.

4. ENUM 유형:

ENUM 유형은 집합에서 하나의 값만 얻을 수 있도록 허용하며 이는 단일 옵션과 다소 유사합니다. 인간의 성별과 같이 상호 배타적인 데이터를 다룰 때 이해하기가 더 쉽습니다. ENUM 유형 필드는 컬렉션에서 값을 가져오거나 null 값을 사용할 수 있습니다. 그렇지 않으면 입력으로 인해 MySQL이 빈 문자열을 필드에 삽입하게 됩니다. 또한, 삽입된 값의 대소문자가 컬렉션에 있는 값의 대소문자와 일치하지 않는 경우, MySQL은 자동으로 삽입된 값의 대소문자를 이용하여 컬렉션의 대소문자와 일치하는 값으로 변환한다.

ENUM 유형은 시스템 내부에 숫자로 저장될 수 있으며, 1부터 시작하는 숫자로 인덱싱됩니다. ENUM 유형은 최대 65536개의 요소를 포함할 수 있으며, 그 중 하나는 MySQL에서 오류 정보를 저장하기 위해 예약되어 있습니다. 이 오류 값은 인덱스 0 또는 빈 문자열로 표시됩니다. MySQL은 ENUM 유형 컬렉션에 나타나는 값을 합법적인 입력으로 간주하고 다른 입력은 실패합니다. 이는 빈 문자열이나 해당 숫자 인덱스 0이 포함된 행을 검색하면 잘못된 레코드의 위치를 ​​쉽게 찾을 수 있음을 보여줍니다.

5. 세트 유형:

SET 유형은 ENUM 유형과 유사하지만 동일하지는 않습니다. SET 유형은 미리 정의된 컬렉션에서 원하는 수의 값을 가져올 수 있습니다. 그리고 ENUM 유형과 마찬가지로 SET 유형 필드에 미리 정의되지 않은 값을 삽입하려고 하면 MySQL이 빈 문자열을 삽입하게 됩니다. 합법적인 요소와 불법적인 요소를 모두 포함하는 레코드를 삽입하면 MySQL은 합법적인 요소를 유지하고 불법적인 요소를 제거합니다.

SET 유형은 최대 64개의 요소를 포함할 수 있습니다. SET 요소에서 값은 해당 요소를 나타내는 "비트"의 개별 시퀀스로 저장됩니다. 비트는 순서가 지정된 요소 컬렉션을 만드는 간단하고 효율적인 방법입니다. 또한 중복된 요소를 제거하므로 SET 유형에 두 개의 동일한 요소를 포함하는 것이 불가능합니다. SET 유형 필드에서 잘못된 레코드를 찾으려면 빈 문자열이나 이진 값 0이 포함된 행을 찾으면 됩니다.

각 데이터 유형의 목적, 물리적 저장, 표현 범위 등에 대한 개요를 제공합니다. 이러한 방식으로 특정 애플리케이션에 직면할 때 해당 특성에 따라 적절한 데이터 유형을 선택할 수 있으므로 애플리케이션 만족을 기반으로 더 적은 스토리지 비용으로 더 높은 데이터베이스 성능을 달성하기 위해 노력할 수 있습니다.

위 내용은 Backend.com MySQL 데이터베이스 비디오 튜토리얼 리소스 추천의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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