2012-02-08 2 views
1

내가이 일을 시도에서, 쿼리

//returns the last updated id 
$val = $DB->GetOne("SELECT id FROM table_name ORDER BY id DESC LIMIT 0,1"); 

을 한 결과를 얻을하지만 $DB->GetRow()을하지 않으면 작동하지 않습니다. 그렇다면 GetOne()의 where 절을 사용해야 할 필요가 있습니까?

+0

우리는 당신이 어떤 코드를 사용하고 있는지 모릅니다. – dynamic

+0

에서와 같이, $ DB 객체를 생성하는 라이브러리는 무엇입니까? $ DB는 어떤 클래스입니까? – Matt

+0

@Matt 태그로 ADODB입니다. –

답변

0

하나의 결과를 쿼리하기 때문에 WHERE 절이 필수적이라고 생각합니다. 당신이 찾고있는 것을 정의하지 않고 하나의 결과를 얻으 려한다면, 당신이 의도 한대로 작동 할 것이라고 상상하지 못합니다. ADOdb 설명서에서 PHP Code Examples을 참조하십시오.

+0

나는 항상 조건없이 WHERE 조건으로 데이터를 가져오고, 사용하기 위해 지시 한 순서대로 전체 행 세트를 가져 오거나 기본값으로 설정합니다. 이것은 문제가 아니어야합니다. – casraf

+0

@OhMrBigshot 죄송합니다. 나는 조건이 아니라 임무를 의미했다. 둘째로, 나는 그가 단지 하나의 ** 결과를 얻으려고 노력하고 있다고 생각한다. 전체 행은 아니다. 나는'GetOne() '이라는 이름의 메소드를 사용하여 그가 하나의 결과를 원한다는 것을 상상할 것입니다. ... ... 혼란 스럽습니다. 그의 질문은 단어가 아닙니다. – Rob

+0

그는 단지 많은 행에서 하나의 행을 원하는 것처럼 보입니다. D : 확실하지 않습니다. – casraf

0

문제의 코드는 작동하지만 adodb mysql 드라이버에 버그가있어 결과가 없으면 NULL 대신 false를 반환합니다. 2010 년 The bug was fixed. 따라서 이전 버전의 adodb를 실행중인 경우 버그가 발생할 수 있습니다.

GetOne은 결과 집합의 첫 번째 행에있는 첫 번째 필드의 내용을 반환합니다.

또한 "작동하지 않는다"는 말은 많지 않습니다.

무엇이 잘못되었는지 보려면 $ DB-> ErrorMsg()를 인쇄 해보십시오.