Programming
No. | 631 | ||||
Name. | swindler | ||||
Subject. | Data Too Long | ||||
Main Cate. | MySQL | ||||
Sub Cate. | |||||
Date. | 2009-05-29 15:35 | ||||
Hit. | 5236 (211.36.27.8) | ||||
File. | |||||
mysql 5.0.2 부터는 auto_truncate를 하지 않고 error 를 발생시킨다. 따라서 column filed보다 데이터가 긴 경우에 data too long 과 같은 에러가 발생한다. 아래 2가지 명령어로 현재 모드를 알아낼수 있으며, SELECT @@global.sql_mode; SELECT @@session.sql_mode; SET GLOBAL sql_mode='STRICT_TRANS_TABLES' 와 같이 실행하면, 런타임시에 모드 지정이 가능하면, my.cnf 설정파일을 아래와 같이 수정하면 항상 적용시킬수 있다. [mysqld] sql-mode = STRICT_TRANS_TABLES STRICT_TRANS_TABLES 만약에 값을 지정한 형태로 트랜젝션 테이블에 삽입할 수가 없다면, 명령문을 중단한다. 논-트랜젝션 (non-transactional) 테이블에 대해서는, 그 값이 단일-열 명령문 또는 다중-열 명령문의 맨 처음 열에 나오게 되면 명령문을 중단한다. (MySQL 5.0.2) [바로가기 링크] : http://coolx.net/cboard/develop/631 |
|||||
|
|||||
[Modify] [Delete] | [Reply] [List] |