CI 묻고 답하기

제목 $result=$this->db->query 결과가 나오지 않습니다.
카테고리 CI 2, 3
글쓴이 욕쟁이꼬마 작성시각 2020/01/17 23:11:34
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 13024   RSS

안녕하세요. 쿼리중 해결하지 못한 문제가 발생되어서 검색해도 글이 없길래 문의드려요.

쿼리문장을 날려서 쿼리를 시켰는데 mysql 에서 에러를 내고 끝나버렸습니다.

그래서 쿼리문장을 재시도해보니 같은키가 있어서 insert 에 실패했더군요.

(MySQL 메시지: #1062 - 중복된 입력 값 'sample33': key 'PRIMARY' )

 

코드는 다음과같이 실행했습니다.

...

$result=$this->db->query($strInsert); <= 여기를 수행하고 나면 결과없이 그냥 속에서 죽어버립니다.

... <== 이후로 아무것도 처리를 못하고 있어요. $result  결과를 보고 처리해야하는데..아에 넘어오지를 않아요.

(메뉴얼상에서는 true,false가 나온다고하는데요. 안쪽에서 죽어버리니 아무짓도 못하고있습니다. )

( 우분투16,CI=3.1,PHP7을 사용중입니다.)

db설정은 이렇게 설정했습니다.

$db['default'] = array(

'dsn' => '',

'hostname' => 'localhost',

'username' => 'sagood',

'password' => 'sagood',

'database' => 'sagooddb',

'dbdriver' => 'mysqli',

'dbprefix' => '',

'pconnect' => FALSE,

'db_debug' => (ENVIRONMENT !== 'production'),

'cache_on' => FALSE,

'cachedir' => '',

'char_set' => 'utf8',

'dbcollat' => 'utf8_general_ci',

'swap_pre' => '',

'encrypt' => FALSE,

'compress' => FALSE,

'stricton' => FALSE,

'failover' => array(),

'save_queries' => TRUE

);

 

- true,false 가 나오면좋을것같고요, 기타 try catch 처리가 되어도 좋겠습니다. 둘다 실패중이라 이걸 어찌처리해야나 고민에 빠져있습니다. 도움말좀주십시요. (__

 다음글 코드이그나이터3 encryption 데이터 검색관련 (8)
 이전글 컴포져 인스톨시 궁굼증 (2)

댓글

엽토군 / 2020/01/19 14:10:25 / 추천 0
insert() 안쓰고 query() 쓰시는 이유가 있나요?
한대승(불의회상) / 2020/01/20 09:07:38 / 추천 0

db_debug = false 로 하시면 됩니다.

근본적으로 primary key가 중복되지 않도록 방어 로직을 집어 넣는것이 좋습니다.

욕쟁이꼬마 / 2020/01/31 15:49:22 / 추천 0

한대승님/ 고마워요. 덕분에 잘 해결되었습니다.

엽토님/특별한 이유없어요. 그냥 제가 편하게 쓰는것뿐이에요. 다른 (C++)템플리트에서 쓰는 쿼리방법과 유사해서 그냥 익숙한방법을 쓰고있는것 뿐이에요.