제목 | Codeigniter model에서 update시 쿼리 바인딩할때 함수 질문 | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 케케케 | 작성시각 | 2022/02/11 09:37:29 |
|
|||
안녕하세요 Codeigniter model에서 update쿼리문을 작성하는데
바인딩할때 mysql 함수가 들어가면 어떻게 사용을 해야할까요?
예를들면 일반작으로 쿼리 작성시에 이렇게 하는데 set 부분에 mysql 함수가 들어가야합니다. $sql = "UPDATE Board SET BoardId = ? WHERE BoardId = ? AND Seq = ? LIMIT 1;";
return parent::executeSql($sql, array($BoardId, $PreBoardId, $Seq));
UPDATE Board SET TargetPath = REPLACE(TargetPath, '/test/922', '/test2/921') WHERE boardId = '922'; 이런식 REPLACE같은 함수가 들어갑니다. 함수가 들어가면 어떤식으로 작성을 해야할까요? REPLACE(TargetPath, '/test/922', '/test2/921')
이걸 그대로 넣으면 텍스트 형태로 바뀔것 같아서요
감사합니다
|
|||
다음글 | 로그아웃 남은시간 표시 (3) | ||
이전글 | validation에 대해서 궁금한게 있습니다 (2) | ||
변종원(웅파)
/
2022/02/11 10:21:40 /
추천
0
그런 경우는 바인딩이 아니라 escape한 값을 사용하도록 sql문을 만드셔야할 것 같네요.
|
한대승(불의회상)
/
2022/02/11 10:27:38 /
추천
0
쿼리빌더 set() 메소드를 고려해 보시거나 SQL문을 하드코딩해야 합니다. $sql = "UPDATE Board SET TargetPath = REPLACE(TargetPath, '" . '/test/922' . "', '" . '/test2/921'. ") WHERE BoardId = ?";
|
케케케
/
2022/02/11 10:47:01 /
추천
0
where 절만 저렇게하고 말씀하신대로 하드코딩 하던지해야겠네요...답변 감사합니다.
|