我在需要通过 PDO 连接到 MSSQL 数据库的环境中试用 Fat Free Framework。我写了一些代码来测试数据库查询功能。这是我的第一次尝试:
$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();
});
然而,这失败了。生成的查询没有字段(这是生成的确切查询:)SELECT FROM builds
,导致:
内部服务器错误
PDOStatement:[Microsoft][SQL Server Native Client 11.0][SQL Server] 关键字“FROM”附近的语法不正确:
[call stack]...[/call stack]
我在这里做错了什么吗?我无法想象连接字符串有问题,因为它在使用原始 SQL 方法时能够很好地检索数据。启用表到实体映射是否需要某种配置?
我正在按照此处提供的指南进行操作,以供参考。