나는 PDO를 통해 MSSQL 데이터베이스에 연결해야하는 환경에서 Fat Free Framework를 시험 중이다. 기능을 쿼리하는 데이터베이스를 테스트하기 위해 몇 가지 코드를 작성했습니다. 여기에 내 첫번째 시도가있다 :F3 SQL Server 데이터베이스에서 스키마를 가져 오지 못합니까?
$f3->route('GET /datasets/read', function($f3) {
$db = new DB\SQL('sqlsrv:Server=192.168.**.**;Database=test',"sa","*****");
$results = $db->exec('SELECT * FROM builds');
var_dump($results);
});
이것은 잘 동작한다. builds
테이블에있는 모든 기록을 잘 볼 수 있습니다. 여태까지는 그런대로 잘됐다.
내가 프레임 워크가 제공하는 ORM 접근 방식을 사용하고 있었다 시도 다음 일은 :
$f3->route('GET /datasets/read', function($f3) {
$db = new DB\SQL('sqlsrv:Server=192.168.**.**;Database=test',"sa","*****");
$builds =new DB\SQL\Mapper($db,'builds')
$builds->load();
});
이를하지만 실패합니다.
내부 서버 오류
PDOStatement : : [마이크로 소프트] [SQL 서버 네이티브 클라이언트 11.0] [SQL 결과 : 생성 된 질의는 필드 (
SELECT FROM builds
를이 생성 된 정확한 쿼리입니다)이 없습니다 서버] 'FROM'키워드 근처의 구문이 잘못되었습니다 :
[call stack]...[/call stack]
내가 뭔가를하고 있습니까 여기 정확히? 원시 SQL 접근 방식을 사용할 때 데이터를 잘 검색 할 수 있기 때문에 연결 문자열에 문제가 있다고 상상할 수 없습니다. 테이블과 엔티티 매핑을 가능하게하는 일종의 구성이 필요합니까?
참조 용으로 제공되는 가이드 here을 따라 가고 있습니다.
이 버그를 지적 해 주신 Asad 감사합니다. 수정본이 코드에 병합되도록 [Github] (https://github.com/bcosca/fatfree/issues)에 문제를 만들 수 있습니까? – xfra35
@ xfra35 [여기] (https://github.com/bcosca/fatfree/issues/565)에서 문제점을 열었습니다. 내 개인 의견은 이것이 좋은 수정보다 더 많은 임시 방편이라는 것입니다. –