>데이터 베이스 >MySQL 튜토리얼 >mysql 테이블 이름은 대소문자를 구분합니까?

mysql 테이블 이름은 대소문자를 구분합니까?

WBOY
WBOY원래의
2022-01-18 16:29:5315056검색

MySQL 테이블 이름은 Linux에서 대소문자를 구분하지만 Windows에서는 MySQL 테이블 이름은 대소문자를 구분하지 않습니다. MySQL 구성 파일 "my.ini [mysqld]"에 "ower_case_table_names = 매개변수" 행을 추가하여 여부를 설정할 수 있습니다. 쓰기에는 크기가 중요합니다.

mysql 테이블 이름은 대소문자를 구분합니까?

이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.

mysql의 테이블 이름은 대소문자를 구분하나요?

Linux에서 데이터베이스 이름, 테이블 이름, 열 이름 및 별칭에 대한 MySQL의 대소문자 규칙은 다음과 같습니다.

  • 데이터베이스 이름과 테이블 이름은 엄격하게

  • 테이블 별칭은 대소문자를 구분합니다.

  • 열 이름과 열 별칭은 모든 경우에 대소문자를 구분합니다.

  • 변수 이름도 대소문자를 구분합니다.

    MySQL은 Windows에서 대소문자를 구분하지 않습니다.
그래서 다른 운영체제에서도 프로그램과 데이터베이스가 정상적으로 실행되게 하려면 설계 시 소문자로 변환하는 것이 가장 좋습니다. 하지만 설계 시 대소문자를 정규화했다면 Windows 환경에서 그냥 변경해 주면 됩니다.

특정 작업은 다음과 같습니다.

MySQL 구성 파일 my.ini [mysqld]

에 owe_case_table_names = 1 줄을 추가합니다. 매개변수 설명:

0: 대소문자 구분

1: 대소문자 구분 안 함

MySQL에서 데이터베이스와 테이블은 해당 디렉터리 아래의 디렉터리와 파일에 해당합니다.

따라서 운영 체제의 민감도에 따라 데이터베이스 및 테이블 이름 지정의 대소문자 구분이 결정됩니다. 즉, 데이터베이스 및 테이블 이름은 Windows에서는 대소문자를 구분하지만 대부분의 Unix 시스템에서는 대소문자를 구분합니다.

열 이름과 열 별칭은 모든 경우에 대소문자를 구분하며, 테이블 별칭은 대소문자를 구분합니다. 이 문제를 방지하려면 데이터베이스 명명 규칙을 정의할 때 대문자를 사용하지 않고 모두 소문자와 밑줄을 사용하는 것이 가장 좋습니다. 또는 -O lower_case_table_names=1 매개변수를 사용하여

mysqld를 강제로 시작할 수 있습니다(mysqld를 시작하기 위해 --defaults-file=...my.cnf 매개변수를 사용하여 지정된 구성 파일을 읽는 경우, [ mysqld] 구성 파일의 ] 섹션 아래에 lower_case_table_names=1) 줄을 추가합니다. 이러한 방식으로 MySQL은 생성 및 조회 중에 모든 테이블 이름을 자동으로 소문자로 변환합니다. 이 옵션의 기본값은 1이고 Unix에서는 0입니다.

추천 학습:

mysql 비디오 튜토리얼

위 내용은 mysql 테이블 이름은 대소문자를 구분합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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