묻고답하기
xml query 의 어디가 잘못된 걸까요
2012.11.26 23:21
my.model.php 에 이런 부분이 있습니다.
$temp="abc";$this->myDebug($temp);
$temp=123;$this->myDebug($temp);
이걸 실행하면 DB에 abc 와 123 이 insert 되어 있을것으로 기대 했습니다.
그런데 여러번 반복해서 돌려봐도 123만 insert 되고 abc부분은 null도 아니고 아얘 입력을 건너뜁니다. 뭐가 문제일까요?
--------------------------------------------------------------
myDebug()는 다음과 같이 정의되어 있습니다.
function myDebug($v) {
$args->temp = $v;
$output = executeQuery('my.myDebug', $args);
return $output;
}
query는 다음과 같습니다.
<query id="myDebug" action="insert">
<tables>
<table name="my_debug" />
</tables>
<columns>
<column name="temp" var="temp" filter="alpha_number" />
</columns>
</query>
DB의 my_dubug란 테이블은
temp varchar(999) utf8_general_ci 로 정의되어 있습니다.
댓글 2
-
KANTSOFT
2012.11.27 11:39
-
울라탱
2012.11.27 12:27
debugPrint() 를 이용해서 확인해 보세요.
쿼리 xml 에 문제는 없어 보입니다.
$output = $this->myDebug($temp);
debugPrint($output);
디버깅된 파일은 /files/_debug_message.php 에 있습니다.
-
커피메이트
2012.11.27 16:56
감사합니다. 문제를 생각치도 못한 곳에서 해결하였습니다. 원인은 schemas 를 등록해두고 캐쉬 업데이트를 안해서 적용이 안되고 있던 거였습니다. 안되려면 다 안될것이지 문자열만 팅겨서 머리를 복잡하게 만들었었네요. 답변 주신 두분에게 감사드립니다.
filter="alpha_number" /> 때문이 아닐런지요. alpha_number가 숫자형을 필터링 하는거 같은데요.. abc는 문자로 인식하여 값이 필터링이 되는듯합니다.