<query id="xeQueriesC" action="select">
    <tables>
        <table name="files" alias="files"/>
    </tables>
    <columns>
        <column name="upload_target_srl" alias="upload_target_srl" />
    </columns>
    <conditions>
        <condition operation="equal" column="file_srl" var="file_srl" filter="number" />
    </conditions>
</query>

가 안되서

 

<query id="xeQueriesC" action="select">
    <tables>
        <table name="files" />
    </tables>
    <conditions>
        <condition operation="equal" column="file_srl" var="file_srl" filter="number" />
    </conditions>
</query>

로 바꿔서 했습니다, var에 값이 지정이 안되더군요.

 

<query id="xeQueriesC" action="select">
    <tables>
        <table name="files" />
    </tables>
    <conditions>
        <condition operation="equal" column="file_srl" var="file_srl" filter="number" />
    </conditions>
</query>

 

$args = new StdClass();

$args->test_que = Context::get('file_srl');
$output = executeQuery('file.xeQueriesC', $args);
exit(print_r($output));

 

이렇게 하니까 쿼리값이 나오는데; 왜 이렇나요?

  • profile
    columns 에 <column name="*" />
    을 넣도록 하고, $args->test_que = Context::get('file_srl'); 에서 test_que 를 file_srl 으로 쓰시도록.. 하는게..(나머진 정보가 부족해서..)
  • profile ?
    컬럼에 * 주고 $args->file_srl이 안되서 $args->test_que(전혀 상관없는 이름)으로 하니까 쿼리값이 정상으로 나옵니다.
    왜 그런가요? 쿼리에도 캐시가 적용되나요?
  • ? profile
    file_srl 이 안잡혀있기 때문에 전체 내용을 불러오는걸껄요?
    재대로된 칼럼을 가져오기위해서 file_srl 을 가져오는 방법에서, 그 위에 선언된 file_srl 값으로 넣는다는 부분이 어떤값으로 들어가는지부터 파악을 하면서 디버그를 해보셔야해요.
  • profile
    이미 condition에 선언한 var 값이 file_srl이므로.. $args->file_srl 에 들어가는값에 따라 정보가 넘어가는것인데,

    $output = executeQuery('file.xeQueriesC', $args);
    해두고, $output을 디버그 해보시고, 넘겨보면서 무슨 정보가 어떻게 부족한지.. Context::get에서 가져온 정보가 정확하게 넘어온건지 등등여부를 확인해보세요