CakePHP는 일반 SQL이 아닌 MySQL 구문 인 "LIMIT X"로 끝나는 모든 쿼리를 구성하며 Microsoft SQL Server는이를 허용하지 않습니다. 제공MSSQL과 함께 CakePHP에서 LIMIT 키워드 대신 TOP를 어떻게 사용합니까?
SELECT "Content"."id" AS "Content_dot_id",
"Content"."name" AS "Content_dot_name"
FROM "contents" AS "Content" WHERE (1=1) LIMIT 1
:
37000: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'LIMIT'.
당신이 원하는 때문에 : 당신은 ODBC 드라이버를 사용하는 경우에도이 같은 쿼리를 생성 할 수 있습니다
SELECT TOP 1 "Content"."id" AS "Content_dot_id",
"Content"."name" AS "Content_dot_name"
FROM "contents" AS "Content" WHERE (1=1)
온 걸리는 코드 "LIMIT"는 DB 관련 파일 중 하나가 아닌 dbo_source.php에 있습니다 (함수 제한 ($ limit, $ offset = null)이라고 생각합니다).
LIMIT 대신 TOP 구문으로 전환하려면 일부 설정을 전환 할 수 있습니까?
나는 스톱그 갭으로 무엇을하고있는 것은 "dbo_odbc에서"function limit ($ limit, $ offset = null) {return null;} "을 다시 선언했음을 나타냅니다. php 그러나 이것은 추악한 성능이 될 것이고 model-> find ("first")는 더 이상 제대로 작동하지 않을 것입니다. – Dave