【发布时间】:2021-04-19 15:51:35
【问题描述】:
我正在尝试使用 Laravel 7 和 ODBC 连接到 DB2 数据库。当我尝试如下的普通 SELECT 语句时,问题就出现了。
$test = Test::where('TEST', '1')->get();
Eloquent 生成带引号的 SQL:SELECT * FROM 'TEST' WHERE 'TEST' = 1。我的 DB2 数据库不支持引号。如果我尝试以下操作,它可以正常工作。
$test = DB::connection('odbc-as400')->table('TEST')->take(50)->get();
class Test extends Model
{
protected $connection = 'odbc-as400';
protected $table = 'TEST';
}
连接:
'odbc-as400' => [
'driver' => 'odbc',
'dsn' => 'X',
'host' => 'X',
'username' => 'X',
'password' => 'X',
'prefix' => '',
'database' => 'X',
'options' => [
'processor' => Illuminate\Database\Query\Processors\Processor::class,
'grammar' => [
'query' => Illuminate\Database\Query\Grammars\Grammar::class,
'schema' => Illuminate\Database\Schema\Grammars\ODBCSchemaGrammar::class
]
]
],
如何禁用引号?
【问题讨论】:
标签: sql laravel eloquent odbc laravel-7