install_db.php 질문 (급해요 ㅠㅠ) 정보
install_db.php 질문 (급해요 ㅠㅠ)본문
안녕하세요
처음 그누보드 설치시 데이타베이스에 만들어지는 테이블중에 g4_member 라는 테이블이 있습니다. 이름그대로 회원들의 정보를 저장하는곳이지요.
g4_member 안에는 총 47개의 베리어블이 있고 23개 전부 not null 상태입니다. 하지만 default value 를 가지고있는건 10개 밖에 되질 않습니다. 이말은 즉, 테이블에 row 를 하나 추가할경우 default value 가있는 10개외의 37개는 반드시 어떠한 벨류를 넣어줘야 하는걸로 알고있습니다. 또한 13개중 한개라도 특정한 밸류를 적어주지 않을경우애는 애러가 나는걸로 알고있습니다.
근데 install_db.php 의 최고운영자의 정보를 g4_member 테이블안에 넣는 코드를 보면 11개의 베리어블만 밸류를 적어서 insert 쿼리로 사용 되고 있는걸 찾았습니다. default value 가 정해져있지 않고 not null 상태임에도 불구하고 특정한 벨류를 지정해주지 않은상태에서 어떻게 에러없이 정보들이 테이블안으로 들어가는지 궁금합니다.
최고운영자 추가 이외에도 게시판그룹생성이나 게시판생성, 회원가입 등에도 똑같은 방식이 사용되던데요
고수분들이 말씀하시는 safe_mode 가 off 상태여서 가능한 일인가요?
도대체 어떻게 그런일이 가능한거죠?
위에 경우에서도 애러가 나는 mysql 과 애러가 나지 않는 mysql 의 차이점이 무엇인가요?
현재 이문제 때문에 많이 애먹고 있습니다. 좀 도와주세요 ㅠㅠ
댓글 전체
not null 과 default value 는 연관 관계가 없는 것으로 알고 있습니다.
왜 이 문제 때문에 호스팅에서 문제가 된다고 생각하신건지요?
다른 문제가 아닌지 점검해보시기 바랍니다.
왜 이 문제 때문에 호스팅에서 문제가 된다고 생각하신건지요?
다른 문제가 아닌지 점검해보시기 바랍니다.
제 서버의 mysql 에서는 연관이 있는것 같습니다.
그누보드 설치후 최고운영자 로그인이 안되서 테이블을 살펴보니 아무것도 들어가있지 않아서 install_db.php 에 있는 쿼리대로 10개의 베리어블만 가지고 따로 insert 쿼리를 돌리면 not null 에 default value 가 없는 베리어블에서
default value 가 없다는 애러 메세지가 뜨는걸 목격하고 나머지 37개의 베리어들까지 임의로 아무거나 집어 넣니깐 insert 쿼리가 그제서야 잘 작동하더군요. 정말로 그렇게 47개의 베리어블을 다 제가 직접 지정해줫을때만 테이블안에 정보가 들어갔습니다
그누보드 설치후 최고운영자 로그인이 안되서 테이블을 살펴보니 아무것도 들어가있지 않아서 install_db.php 에 있는 쿼리대로 10개의 베리어블만 가지고 따로 insert 쿼리를 돌리면 not null 에 default value 가 없는 베리어블에서
default value 가 없다는 애러 메세지가 뜨는걸 목격하고 나머지 37개의 베리어들까지 임의로 아무거나 집어 넣니깐 insert 쿼리가 그제서야 잘 작동하더군요. 정말로 그렇게 47개의 베리어블을 다 제가 직접 지정해줫을때만 테이블안에 정보가 들어갔습니다
mysql 버젼과 에러메시지를 알려주셔야 할 것 같습니다.
쉬운걸 이해 못하시는거 같아 답답하네요.. 깔끔하게 애러나는거 정리해서 링크 걸겠습니다
..
검색을 해보니 mysql 의 sql-mode 가 strict mode 로 되어있으면 그런 현상이 발생한다고 합니다.
mysql 설정파일 (my.cnf) 에서 strict mode 를 제거하면 해결 될 것 같습니다.
# Set the SQL mode to strict
sql-mode=""
서버관리자에게 이부분 요청해보셔야겠네요.
mysql 설정파일 (my.cnf) 에서 strict mode 를 제거하면 해결 될 것 같습니다.
# Set the SQL mode to strict
sql-mode=""
서버관리자에게 이부분 요청해보셔야겠네요.
답변 감사합니다!
서버 관리자한테 한번 요청해봐야겠어요 ^^
서버 관리자한테 한번 요청해봐야겠어요 ^^
그런데 혹시 mysql 5.x 버젼대인가요?
MySQL 4 인듯 합니다..
MySQL 4 일 경우에도 strict mode 모드를 지우면 되는건 마찮가지 인가요?
MySQL 4 일 경우에도 strict mode 모드를 지우면 되는건 마찮가지 인가요?