Q&A

CMS/프레임워크 Rhymix 2.1
개발 언어 PHP 7.4

db.version : 11.4.3-MariaDB-ubu2404
rhymix_version : 2.1.35 를 설치하였는데요. 
라이믹스(Rhymix) CMS는 기본적으로 innodb, utf8mb4_unicode_ci 콜레이션을 사용한다고 하네요.
MariaDB 11 버전은 엄격모드로 자동설정되어 있다고 합니다.


Rhymix 자체의 문제가 아니라 Rhymix 모듈을 만들지 못해서 외부 php파일을 만들어 위젯페이지에 낑겨넣어 사용하다보니
발생하는 문제입니다.

php 5.2 + mysql 5.5 에서 NULL 에 대해서 신경도 안썼는데,

Rhymix 를 사용하기 위해 php7.4 + 11.4.3-MariaDB 로 넘어 오면서 NULL 때문에 스트레스 받고 있습니다.

NULL 관련해서 이리저리 며칠째 구글링 해보며 테스트 해보았는데도 정확한 해답을 못찾은게 있습니다.
이미지와 같이 phpmyadmin 툴에서 number칼럼 타입은 bigint 이고 '기본값' :'없음' 으로 선택되어 있는데,

image.png
insert 쿼리문에 number 칼럼이 없으면 에러가 발생해요.
위 이미지에서 기본값 '없음'빈 문자열('')과 같은 개념 아닌지요?
php 5.2 + mysql 5.5 에서는 문제 없었는데, php7.4 + MariaDB 11 에서 에러나네요.

('없음'을  NULL 로 바꾸면 에러없이 통과 됩니다.-저는 null 아닌 '없음'(빈 문자열) 상태가 이모저모 편한거 같아서..)

다른 칼럼들의 다른 타입들(date, int, varchar )도 기본값 '없음' 으로 된 칼럼들은 insert 쿼리문에 없으면 에러 발생합니다.
위 그림 phpmyadmin 툴 에서 보이는 기본값 글자는 아래 설정 명령하는 DEFAULT ''  와 다른 개념인지요?
ALTER TABLE table_name MODIFY column_name VARCHAR(50) DEFAULT '';


저는 엄격모드 해제없이 기본값 : '없음' 상태로 에러 없이 사용하고 싶거든요.  

rhymix 모듈이 아닌 rhymix 와 함께 php를 사용하시는 분들은 DB-칼럼의 NULL 설정을 어떻게 사용하시는지요?
NULL 설정시 장점과 단점이 있고, 빈 문자열 사용시에도 장점과 단점이 있더라구요.
위 내용을 보시고

엄격모드를 해제하고 사용하는 방안과 NULL 과 빈 문자열 선택에서 기탄없이 경험이나 조언을 좀 부탁드립니다.

 

xone Lv. 1

댓글 0