PDO::MYSQL_ATTR_LOCAL_INFILE可以使用Symfony2中的配置文件设置

问题描述 投票:0回答:2

是否可以在 Symfony2 中设置 PDO / Doctrine 配置来使用

PDO::MYSQL_ATTR_LOCAL_INFILE => true
而不直接使用 PDO?

我的用例是将 csv 文件加载到 Amazon RDS 上的 MySQL 中。 Symfony 版本是 2.4

我收到错误:

PHP Warning:  PDOStatement::execute(): LOAD DATA LOCAL INFILE forbidden in /.../vendor/doctrine/dbal/lib/Doctrine/DBAL/Statement.php on line 165
php symfony pdo doctrine-orm
2个回答
7
投票

是的,您可以在您的

config.yml
中设置:

doctrine:
    dbal:
        options:
            "PDO::MYSQL_ATTR_LOCAL_INFILE": 1

该键必须用引号引起来,因为它包含冒号。


0
投票

使用 Symfony >=3.2,语法为:

doctrine:
  dbal:
    options:
      !php/const:PDO::MYSQL_ATTR_LOCAL_INFILE: 1

如果您有多个连接,请使用:

doctrine:
  dbal:
    connections:
      my_connection:
        options:
          !php/const:PDO::MYSQL_ATTR_LOCAL_INFILE: 1
© www.soinside.com 2019 - 2024. All rights reserved.