phpMyAdmin GUI(구조 탭)에서 TEXT 를 MEDIUMTEXT 나 LONGTEXT 로 수정한 뒤 저장했으나 다시 TEXT 로 돌아가는 현상 > Info Tech

본문 바로가기
사이트 내 전체검색

Info Tech

▒ Info Tech ▒ 네트워크/보안/해킹 ▒ 하드웨어 ▒ 소프트웨어
Information Technology Group
▒ Info Tech ▒ 네트워크/보안/해킹 ▒ 하드웨어 ▒ 소프트웨어

PHP phpMyAdmin GUI(구조 탭)에서 TEXT 를 MEDIUMTEXT 나 LONGTEXT 로 수정한 뒤 저장했으나 다시 T…

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 6회 작성일 26-07-25 00:08

본문

phpMyAdmin GUI(구조 탭)에서 TEXTMEDIUMTEXTLONGTEXT 로 수정한 뒤 저장했으나 다시 TEXT 로 돌아가는 현상은 MySQL sql_mode 설정(예: STRICT_TRANS_TABLES )과 그누보드 기본값( wr_datetime 등)의 충돌 오류 때문입니다. 
phpMyAdmin UI 화면은 내부적으로 테이블 전체를 변경하려 시도하는데, 그누보드 테이블 내 다른 필드(예: wr_datetime0000-00-00 00:00:00 값)에서 올바르지 않은 기본값 오류( #1067 - Invalid default value )가 발생하여 명령 전체가 취소(Rollback)되어 기존 TEXT 로 되돌아가는 것입니다. 
이 문제는 GUI 디자인 툴을 쓰지 않고 phpMyAdmin SQL 질의창에서 직접 명령어를 실행하면 간단히 해결됩니다. 

해결 방법: SQL 직접 실행하기
  1. phpMyAdmin 좌측 트리 메뉴에서 사용 중인 데이터베이스(DB) 명을 선택합니다.
  2. 상단 메뉴 탭 중에서 SQL 질의창을 클릭합니다.
  3. 수정하려는 게시판 테이블 아이디에 맞춰 아래 코드 중 하나를 복사하여 입력합니다. 
MEDIUMTEXT로 변경할 때 (추천)
sql
               ALTERTABLE `g5_write_게시판아이디` MODIFY `wr_content` MEDIUMTEXT NOTNULL;

               
코드를 사용할 때는 주의가 필요합니다.
 
LONGTEXT로 변경할 때
sql
               ALTERTABLE `g5_write_게시판아이디` MODIFY `wr_content` LONGTEXT NOTNULL;

               
코드를 사용할 때는 주의가 필요합니다.
 
(※ g5_write_게시판아이디 부분은 본인의 실제 테이블명으로 변경해야 합니다. 예: 자유게시판 id가 free 라면 g5_write_free 로 입력) [1]
  1. 우측 하단의 실행(Go) 버튼을 누릅니다. 

왜 이렇게 해야 하나요?
MODIFY 구문을 사용해 SQL창에서 특정 필드만 강제로 지정하여 변경하면, phpMyAdmin의 GUI 수정 기능과 달리 다른 필드의 유효성 검사 오류를 우회하여 wr_content 필드만 성공적으로 변경할 수 있습니다. 
질의 실행 후 다시 구조(Structure) 탭으로 이동해 보시면 타입이 정상적으로 MEDIUMTEXT 또는 LONGTEXT 로 유지되어 있는 것을 확인할 수 있습니다. 

댓글목록

등록된 댓글이 없습니다.


사이트 정보

회사명 : 회사명 / 대표 : 대표자명
주소 : OO도 OO시 OO구 OO동 123-45
사업자 등록번호 : 123-45-67890
전화 : 02-123-4567 팩스 : 02-123-4568
통신판매업신고번호 : 제 OO구 - 123호
개인정보관리책임자 : 정보책임자명

접속자집계

오늘
7
어제
4
최대
28
전체
175
Copyright © HeyWEB. All rights reserved.