반응형
내 DB에 행을 삽입하는 데 문제가 있습니다. 행에 'è', 'ò', 'ò', '€', '²', '³'.... 등의 문자가 포함되어 있으면 다음과 같은 오류가 반환됩니다 (문자 세트가 utf8 ) :
Incorrect string value: '\xE8 pass...' for column 'descrizione' at row 1 - INSERT INTO materiali.listino (codice,costruttore,descrizione,famiglia) VALUES ('E 251-230','Abb','Relè passo passo','Relè');
그러나 문자 집합을 latin1 또는 * utf8_general_ci *로 설정하면 제대로 작동하고 오류가 발견되지 않습니다.
누군가 왜 이런 일이 발생하는지 설명해 줄 수 있습니까? 저는 항상 utf8 이 latin1 보다 "더 크다"고 생각했습니다.
편집 : 나는 또한 mysql_real_escape_string을 사용하려고 시도했지만 오류는 항상 동일했습니다 !!!!
해결 방법
완전히 안전하려면 테이블 데이터 정렬 을 확인하고 utf8 _ *
인지 확인하고 SET NAMES
SET NAMES 'utf8' COLLATE 'utf8_general_ci'
참조 페이지 https://stackoverflow.com/questions/10597153
반응형
'MySql' 카테고리의 다른 글
MySQL에서 함수 기반 인덱스를 가질 수 있습니까? (0) | 2021.02.10 |
---|---|
MySQL mysql에서 문을 업데이트 한 후 영향을받는 행을 얻는 방법은 무엇입니까? (0) | 2021.02.10 |
MySQL SQL 테이블 변경-NULL 열 값 허용 (0) | 2021.02.10 |
MySQL 데이터베이스의 데이터를 PHP를 통해 텍스트 필드로? (0) | 2021.02.10 |
MySQL Windows XP에서 localhost (10061)의 MySQL 서버에 연결할 수 없습니다. mysql 연결 오류 (0) | 2021.02.10 |
댓글