我可以让 Eloquent ORM 运行查询而不使用准备好的语句吗?或者我必须使用whereRaw()
?
我需要使用原始查询,因为我正在尝试与 InfiniDB 交互,后者不支持来自 PHP 的准备好的语句。无论如何,所有查询都将使用内部生成的数据,而不是用户输入,因此这不应该是安全问题。
最佳答案
对于除 SELECT
以外的任何内容您可以使用 unprepared()
DB::unprepared($sql);
对于一个毫无准备的人
SELECT
您可以使用普通的 PDO query()
通过 getPdo()
访问事件的 PDO 连接$pdo = DB::getPdo();
$query = $pdo->query($sql);
$result = $query->fetchAll();
关于sql - 不要在 Laravel Eloquent ORM 中使用准备好的语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25296029/