MySQL에서 열과 테이블 이름은 대소문자를 구분합니까?
라고 하는 컬럼명이 있는 경우category_id
그리고.Category_Id
다른가요?
그리고 테이블이 있다면category
그리고.Category
다른가요?
Unix 에서는 테이블명은 대소문자를 구분합니다.Windows 에서는 그렇지 않습니다.재밌지 않아?각각의 파일 시스템처럼요이게 우연이라고 생각하세요?
즉, Windows 상에서 개발 중이지만 Linux 머신에 도입할 예정이라면 SQL을 Linux 기반의 MySQL에 대해서도 테스트하거나 Prod 시 원인 모를 "table not found" 오류에 대비하는 것이 좋습니다.요즘은 VM이 싸요.
필드(열) 이름은 대소문자를 구분하지 않습니다.
편집: 클라이언트가 아닌 MySQL 서버 머신의 운영체제에 대해 말하고 있습니다.
MySQL 문서:
Windows 에서는, 데이타베이스명과 테이블명은 대소문자를 구별하지 않습니다.또, 대부분의 Unix 에서는 대소문자를 구별합니다.주목할 만한 예외 중 하나는 Unix 기반이지만 대소문자를 구분하지 않는 기본 파일 시스템 유형(HFS+)을 사용하는 Mac OS X입니다.
그리고.
어떤 플랫폼에서도 열 및 인덱스 이름은 대소문자를 구분하지 않으며 열 별칭도 구분하지 않습니다.
데이터베이스 및 테이블 이름의 경우 기본 운영 체제에 따라 다릅니다.8.2.2를 참조해 주세요. 식별자 대소문자의 구별
이상하게도 MySQL Workbench에서는 Windows에서도 대소문자가 구분됩니다.
SELECT 문의 결과를 변경하려고 했지만 Workbench는 이를 허용하지 않았고, 쿼리에 테이블의 기본 키가 포함되어 있지 않기 때문에(대소문자만 포함), 결과는 읽기 전용이라고 불평했습니다.프라이머리 키를 적절한 케이스(ID 대신 ID)로 동일한 쿼리를 실행하면 예상대로 결과를 편집할 수 있습니다.
언급URL : https://stackoverflow.com/questions/2009005/are-column-and-table-name-case-sensitive-in-mysql
'programing' 카테고리의 다른 글
실제로 Python 3.3에서 "유효율" 구문의 주요 용도는 무엇입니까? (0) | 2022.11.20 |
---|---|
휴지 상태 오류: org.hibernate.NonUniqueObjectException: 동일한 식별자 값을 가진 다른 개체가 세션에 이미 연결되어 있습니다. (0) | 2022.11.20 |
PyLint "가져올 수 없습니다" 오류 - PYTONPATH를 설정하는 방법 (0) | 2022.11.20 |
'Z' 리터럴이 있는 SimpleDateFormat 구문 분석 날짜 (0) | 2022.11.20 |
사전의 값을 기준으로 사전 목록을 정렬하려면 어떻게 해야 합니까? (0) | 2022.11.20 |