具有关系数据库名称的ZF2 PDO_IBM驱动程序

怀特

有一个Zend Framework 2.4连接工厂,该工厂需要与AS400 iSeries数据库建立连接。必须以这种方式进行连接,因为存在多个测试环境,并且工厂需要容纳每个测试环境。

该方法正在使用Zend \ Db \ Adapter \ Adapter,并且我将该类传递给数据库连接参数数组。

问题:Zend \ Db \ Adapter不接受关系数据库(目录)名称。我假设由于驱动程序是PDO_IBM,所以会期望有一个字段用于显式定义目录的名称。

方法如下:

 public function conn($dbs) {
   $this->adapter = new Adapter(array(
       'driver' => $dbs['db']['driver'],
       'dbname' => $dbs['db']['dbname'],
       'username' => $dbs['db']['username'],
       'password' => $dbs['db']['password'],
       'hostname' => $dbs['db']['hostname'],
       'port' => $dbs['db']['port'],
   ));
   var_dump($this->adapter);
   return $this->adapter;
}

适配器是\ Zend \ Db \ Adapter \ Adapter的别名

这是创建的对象。

["driver":protected]=> object(Zend\Db\Adapter\Driver\Pdo\Pdo)#224 (4){ 
  ["connection":protected]=>object(Zend\Db\Adapter\Driver\Pdo\Connection)#225 (6) { 
["driver":protected]=> *RECURSION* 
["profiler":protected]=> NULL 
["driverName":protected]=> string(3)"ibm" 
["connectionParameters":protected]=> array(6) { 
    ["driver"]=> string(7) "PDO_IBM" 
    ["dbname"]=> string(7) “<relational_database_name>” 
    ["username"]=> string(3) “<user_name" 
    ["password"]=> string(3) “<password>" 
    ["hostname"]=> string(9) "127.0.0.1" 
    ["port"]=> string(3) "446" 
}

我可以使用以下方法实例化连接对象:

 $conn = new \Zend\Db\Adapter\Adapter( );
 Pdo=ibm:<relational_database_name> 

但是,对于这种情况,这不是可行的解决方案。最后,这是错误:

连接错误:SQLSTATE = 42705,SQLConnect:-950关系数据库dbname =;不在关系数据库目录中。

怀特

为了完整起见,以下配置适用于在Zend Server 6上运行并连接到AS400 iSeries数据库的ZF2 Zend \ Db \ Adapter \ Adapter。

 //concat the driver and rel. db directory name into one string
 //$dsn name is required for Zend\Db to correctly read it into memory 
 $dsn = "ibm:" . $db_dir_name;
   $this->adapter = new Adapter(array(
 'driver' => $driver,  // Pdo
 'dsn' => $dsn,
 'username' => <user_name>,
 'password' => <user_pwd>
 ));

这没有记录在任何地方,并通过反复试验弄清楚了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Ubuntu上为Node.js安装IBM DB2数据库驱动程序

来自分类Dev

具有关系数据库的Hadoop

来自分类Dev

mongodb本机驱动程序获取没有数据库名称的集合名称

来自分类Dev

亚马逊 AMI PDO MYSQL 驱动程序丢失。没有适用于 PHP 7.1 的软件包。如何安装 7.1 PDO_MYSQL 驱动程序?

来自分类Dev

h2数据库驱动程序发出未找到驱动程序的消息

来自分类Dev

错误:找不到驱动程序-将PDO与MS Access数据库一起使用

来自分类Dev

IBM DB2 ODBC驱动程序64位无法加载

来自分类Dev

DB2:获取 [IBM][CLI 驱动程序] SQLSTATE=58004 SQLCODE=-1042

来自分类Dev

Windows设备驱动程序中的pdo和fdo有什么区别?

来自分类Dev

Windows设备驱动程序中的pdo和fdo有什么区别?

来自分类Dev

具有异步C ++驱动程序的SQL / NoSQL数据库管理系统

来自分类Dev

使用pdo和关系数据库获取行

来自分类Dev

添加驱动程序中没有驱动程序

来自分类常见问题

在关系数据库表中查找具有所有关系的条目

来自分类Dev

在关系数据库表中查找具有所有关系的条目

来自分类Dev

如何通过 python ibm_db 驱动程序使用 DB2 LOAD 实用程序

来自分类Dev

具有64位R的32位数据库驱动程序可查询大数据

来自分类Dev

具有64位R的32位数据库驱动程序可查询大数据

来自分类Dev

从TADOConnection对象确定ODBC数据库驱动程序?

来自分类Dev

Qt数据库Fedora的mysql驱动程序

来自分类Dev

Jooq是无法找到Postgres数据库驱动程序

来自分类Dev

NHibernate中的多个数据库驱动程序

来自分类Dev

未指定数据库驱动程序

来自分类Dev

从 mongoose 检索 mongoDB 驱动程序数据库

来自分类Dev

Opencart 无法加载数据库驱动程序 mmysqli

来自分类Dev

Mongo Scala 驱动程序 - 无法插入数据库

来自分类Dev

代码中的数据库驱动程序规范

来自分类Dev

IBM Worklight SQL适配器-无法连接到数据库。无法加载JDBC驱动程序类'com.mysql.jdbc.Driver'

来自分类Dev

symfony2中的MySQL(PDO)错误:驱动程序中发生异常:SQLSTATE [HY000] [1049]

Related 相关文章

  1. 1

    如何在Ubuntu上为Node.js安装IBM DB2数据库驱动程序

  2. 2

    具有关系数据库的Hadoop

  3. 3

    mongodb本机驱动程序获取没有数据库名称的集合名称

  4. 4

    亚马逊 AMI PDO MYSQL 驱动程序丢失。没有适用于 PHP 7.1 的软件包。如何安装 7.1 PDO_MYSQL 驱动程序?

  5. 5

    h2数据库驱动程序发出未找到驱动程序的消息

  6. 6

    错误:找不到驱动程序-将PDO与MS Access数据库一起使用

  7. 7

    IBM DB2 ODBC驱动程序64位无法加载

  8. 8

    DB2:获取 [IBM][CLI 驱动程序] SQLSTATE=58004 SQLCODE=-1042

  9. 9

    Windows设备驱动程序中的pdo和fdo有什么区别?

  10. 10

    Windows设备驱动程序中的pdo和fdo有什么区别?

  11. 11

    具有异步C ++驱动程序的SQL / NoSQL数据库管理系统

  12. 12

    使用pdo和关系数据库获取行

  13. 13

    添加驱动程序中没有驱动程序

  14. 14

    在关系数据库表中查找具有所有关系的条目

  15. 15

    在关系数据库表中查找具有所有关系的条目

  16. 16

    如何通过 python ibm_db 驱动程序使用 DB2 LOAD 实用程序

  17. 17

    具有64位R的32位数据库驱动程序可查询大数据

  18. 18

    具有64位R的32位数据库驱动程序可查询大数据

  19. 19

    从TADOConnection对象确定ODBC数据库驱动程序?

  20. 20

    Qt数据库Fedora的mysql驱动程序

  21. 21

    Jooq是无法找到Postgres数据库驱动程序

  22. 22

    NHibernate中的多个数据库驱动程序

  23. 23

    未指定数据库驱动程序

  24. 24

    从 mongoose 检索 mongoDB 驱动程序数据库

  25. 25

    Opencart 无法加载数据库驱动程序 mmysqli

  26. 26

    Mongo Scala 驱动程序 - 无法插入数据库

  27. 27

    代码中的数据库驱动程序规范

  28. 28

    IBM Worklight SQL适配器-无法连接到数据库。无法加载JDBC驱动程序类'com.mysql.jdbc.Driver'

  29. 29

    symfony2中的MySQL(PDO)错误:驱动程序中发生异常:SQLSTATE [HY000] [1049]

热门标签

归档