> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 데이터 잘림 및 오류 설정을 관리하는 방법: 엄격 모드와 자동 잘림?

MySQL에서 데이터 잘림 및 오류 설정을 관리하는 방법: 엄격 모드와 자동 잘림?

Linda Hamilton
풀어 주다: 2024-11-04 11:03:02
원래의
918명이 탐색했습니다.

How to Manage Data Truncation and Error Settings in MySQL: Strict Mode vs. Automatic Truncation?

MySQL 데이터 잘림 및 오류 설정 관리

MySQL 데이터베이스는 삽입 중에 지나치게 긴 문자열을 처리할 때 서로 다른 동작을 보입니다. 한 인스턴스에서는 데이터가 잘릴 수 있지만 다른 인스턴스에서는 오류가 발생할 수 있습니다. 이러한 차이는 특정 MySQL 설정을 통해 관리할 수 있습니다.

기본 MySQL 동작

기본적으로 MySQL은 "엄격" 모드에서 작동합니다. 이는 테이블에 대한 모든 입력이 길이 제한을 포함하여 열 사양과 정확히 일치해야 함을 의미합니다. 문자열이 정의된 길이를 초과하면 MySQL은 다음 오류를 발생시킵니다.

ERROR 1406 (22001): Data too long for column 'xxx' at row 1
로그인 후 복사

Disabling Strict Mode

이 동작을 변경하고 너무 긴 문자열을 자동으로 자르도록 허용하려면 문자열을 사용하면 엄격 모드 설정을 비활성화할 수 있습니다. MySQL은 두 가지 관련 설정을 제공합니다.

  • STRICT_TRANS_TABLES: 트랜잭션 테이블에 대한 엄격 모드 제어
  • STRICT_ALL_TABLES: 모든 테이블에 대한 엄격 모드 제어

단계 Strict 모드를 비활성화하려면:

  1. MySQL Workbench와 같은 도구나 명령줄을 사용하여 MySQL 데이터베이스에 연결하세요.
  2. STRICT_TRANS_TABLES 및 STRICT_ALL_TABLES를 비활성화하려면 다음 명령을 실행하세요.
SET GLOBAL sql_mode = 'TRADITIONAL';
SET SESSION sql_mode = 'TRADITIONAL';
로그인 후 복사
  1. SELECT @@sql_mode;를 실행하여 새 설정을 확인하세요.

엄격 모드 비활성화가 미치는 영향

엄격 모드를 비활성화하면 MySQL의 데이터 유효성 검사가 완화되어 긴 문자열이 자동으로 잘릴 수 있습니다. 그러나 이로 인해 잠재적으로 데이터 손실 및 무결성 문제가 발생할 수 있다는 점에 유의하는 것이 중요합니다. 엄격 모드를 비활성화하기 전에 잠재적인 결과를 신중하게 고려하는 것이 좋습니다.

위 내용은 MySQL에서 데이터 잘림 및 오류 설정을 관리하는 방법: 엄격 모드와 자동 잘림?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿