PHP phpmyadmin gui 게시판 필드 타입 변경이 안될 때
페이지 정보

본문
phpMyAdmin GUI 화면에서 게시판 필드 타입을 변경할 때, MySQL/MariaDB 버전 간 호환성 문제나 엄격한 SQL 모드(SQL_MODE) 설정, 또는 프라이머리 키(기본키) 부재로 인해 변경 오류가 발생하거나 저장 버튼이 작동하지 않을 수 있습니다.
이 문제는 GUI 대신 직접 SQL 쿼리문을 실행하거나 서버 설정을 조정하여 해결할 수 있습니다. 아래 해결 방법을 순서대로 시도해 보세요.
1. 직접 SQL 쿼리로 변경하기 (가장 확실한 방법)
GUI 환경에서 저장 오류가 날 때는 phpMyAdmin의 SQL 질의창을 통해 강제로 필드 타입을 변경하는 것이 가장 빠르고 확실합니다. [1]
- phpMyAdmin 왼쪽 메뉴에서 해당 게시판의 데이터베이스(DB) 이름을 클릭합니다.
- 상단 메뉴 중에서 [SQL] 탭을 선택합니다.
- 입력창에 아래 형식의 쿼리문을 작성합니다.
sql
ALTERTABLE `게시판_테이블명` CHANGE `기존_필드명` `새로운_필드명` 새로운_타입 NOTNULL;코드를 사용할 때는 주의가 필요합니다.- 그누보드 자유게시판(
g5_write_free)의 본문 필드(wr_content)를mediumtext로 바꾸는 예시:sqlALTERTABLE `g5_write_free` CHANGE `wr_content` `wr_content` mediumtext NOTNULL;코드를 사용할 때는 주의가 필요합니다.
- 그누보드 자유게시판(
- 우측 하단의 [실행(Go)] 버튼을 누릅니다.
2. SQL_MODE(엄격한 모드) 해제하기
MySQL/MariaDB의
STRICT_TRANS_TABLES
모드가 켜져 있으면 필드 타입을 변경할 때 기존 데이터의 유실이나 잘림(Truncation) 위험이 있을 경우 데이터베이스가 변경을 차단합니다. - 임시 해제 (SQL 창에서 실행):
phpMyAdmin [SQL] 탭에서 아래 명령어를 실행하여 엄격한 모드를 임시로 해제한 후 GUI 변경을 다시 시도합니다.sqlSET GLOBAL sql_mode=''; SET SESSION sql_mode='';코드를 사용할 때는 주의가 필요합니다. - 영구 해제 (서버를 직접 운영하는 경우):
DB 서버의 설정 파일(my.cnf또는my.ini)을 열고sql_mode항목에서STRICT_TRANS_TABLES를 제외하거나 주석 처리한 후 DB 서비스를 재시작합니다.
3. 고유키(기본키/Unique Column) 설정 확인
필드를 변경하려는 테이블에 기본키(Primary Key)가 지정되어 있지 않으면 phpMyAdmin이 보안 및 데이터 무결성 이유로 GUI 수정 기능을 비활성화합니다.
- 해당 게시판 테이블의 [구조(Structure)] 탭으로 이동합니다.
- 테이블 내에
id혹은wr_id같은 고유값 필드가 있고, 옆에 열쇠 모양 아이콘(기본키)이 있는지 확인합니다. - 기본키가 없다면, 고유값 번호 필드 옆의 [기본키(Primary)] 버튼을 눌러 지정해 준 뒤 필드 변경을 다시 시도해 보세요.
- 이전글게시판 필드 타입을 아무리 크게 변경해도 아이콘(이모지)을 넣었을 때 글이 뚝 잘려버리는 이유는 26.07.26
- 다음글phpMyAdmin GUI(구조 탭)에서 TEXT 를 MEDIUMTEXT 나 LONGTEXT 로 수정한 뒤 저장했으나 다시 TEXT 로 돌아가는 현상 26.07.25
댓글목록
등록된 댓글이 없습니다.
