Laravel 连接阿里云分析性数据库

laravel 连接阿里云分析性数据库mysql3.0 版本 提拔 通过Mode操作的时候,出现SQLSelectStatement is NOT supported!

我在test中测试的代码如下:

  public function testR()
    {
        $order = OrderDetail::take(10)->get();
        dump($order);
    }

运行以后出现了下面的问题

SQLSTATE[HY000]: General error: 1815 [15022, 2020011011450519216800010403151056353] statement type: class com.alibaba.fastsql.sql.ast.statement.SQLSelectStatement is NOT supported!  (SQL: select * from order_detail` limit 10)`

其中OrderDetail是在数仓中存在的一张表,对应的model中我也添加了以下两个配置,

class OrderDetail extends Model
{
    protected $connection = 'AnalyticDB';
    protected $table = 'order_detail';
}

我的config/database.php的配置如下 ,配置正确无误.
laravel 连接阿里云分析性数据库mysql3.0 版本 提拔 通过Mode操作的时候,出现SQLSelectStatement is NOT supported!

通过阿里云官方给出的文档是可以链接上的并且可以查询到数据,现在我想用laravel框架的model直接查询,但是就出现了上面的异常,有没有人出现过这种情况?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 3

这个很多mysql的函数不能用,我们也在用这个

4年前 评论
hs1234 (楼主) 4年前

把pdo的预查询关闭就可以正常使用了
例如:

'analytic_db'    => [
            'driver'   => 'mysql',
            'host'     => env('ANALYTIC_DB_HOST'),
            'port'     => env('ANALYTIC_DB_PORT'),
            'database' => env('ANALYTIC_DB_DATABASE'),
            'username' => env('ANALYTIC_DB_USERNAME'),
            'password' => env('ANALYTIC_DB_PASSWORD'),
            'options'  => [
                PDO::ATTR_EMULATE_PREPARES => true,
            ]
        ]
4年前 评论
hs1234 (楼主) 4年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!