是否可以在 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
是的,您可以在您的
config.yml
中设置:
doctrine:
dbal:
options:
"PDO::MYSQL_ATTR_LOCAL_INFILE": 1
该键必须用引号引起来,因为它包含冒号。
使用 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