Push(".Net"); $stack->Push("Hello "); echo $stack->Pop() . $s" />
龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

使用PHP操作DB2 Express C的五种方法(1)(3)

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
调用.net的库和调用Java的库类似。 // 要使用DOTNET方法 $stack = new DOTNET("mscorlib", "System.Collections.Stack"); $stack->Push(".Net"); $stack->Push("Hello "); echo $stack->Pop() . $s

调用.net的库和调用Java的库类似。

// 要使用DOTNET方法
$stack = new DOTNET("mscorlib", "System.Collections.Stack");
$stack->Push(".Net");
$stack->Push("Hello ");
echo $stack->Pop() . $stack->Pop();
?>

在使用Java和DOTNET方法之前,机器上必须安装JDK或.net framework。

五、PDO方式

我们在上面已经了解了PHP操作DB2 Express C数据库的四种方法。除了这四种方法,PHP还有其他的方法来操作数据库,如DB、Perl DBI等。虽然方法很多,也很灵活,但这也给开发人员带来了不便。使开发人员在选择数据操作方式上不知所措。为止,在PHP5.1以后的版本集成了PDO(PHP Data Object),使得数据库接口统一为一种。

PDO充分利用了PHP5的面向对象特性。在使用PDO之前必须要下载和安装PDO(在windows版本的PHP5中PDO并未随安装包一起发布)。下载地址:http://snaps.php.net/win32/。在下载完后,在windows目录下的php.ini中加入一个extension=php_pdo_odbc.dll(在上述的四种方法和PDO方式其实在底层都是使用DB2的ODBC驱动来操作数据库)。
通过PDO访问DB2 Express C有三种方法:

1.直接将参数传入构造函数

$pdo_conn = new PDO('odbc:mydb2', 'db2admin', 'mypassword');

其中mydb2是为DB2 Express C建立的数据源。

2.通过文件数据源连接DB2数据库

$pdo_conn = new PDO("url:file://usr/local/db2.dsn");

其中db2.dsn是为DB2 Express C建立的文件数据源。

3.将连接字符串引用php.ini中

在php.ini中加入如下的信息:

[PDO]
pdo.dsn.mydb2 = " odbc:mydb2; username=db2admin; password=mypassword"

$pdo_conn = new PDO('mydb2', 'db2admin', 'mypassword');

上面三种方法虽然都是使用的DB2数据源,但在后面的操作中(如查询数据等)的接口和其他的数据库完全一致。如下面是使用$pdo_conn来查询test中的mytable表中的数据。

$sql = 'SELECT id, name, salary FROM mytable ORDER BY salary DESC';
foreach ($pdo_conn->query($sql) as $row) ...{
print $row['id'] . "\t";
print $row['name'] . "\t";
print $row['salary'] . "\n";
}
}
?>

下面是一种可能的输出结果:

1000 mike 2000
2000 john 2500
… …
7000 bill 10000

PDO除了可以进行基本的数据库操作外,还可以通过beginTransaction、rollBack、commit方法对数据库进行事务操作。

总结

本文介绍了PHP的五种操作DB2 Express C的方法。虽然它们都可以完成我们大多数的任务,但我建议在工作中尽量使用最后一种PDO的方法来操作数据库。因为,Zend公司已经宣布,在未来的版本中PDO将成为PHP中默认的数据库接口。因此,PDO将是未来的趋势。

(责任编辑 火凤凰 sunsj@51cto.com  QQ:34067741  TEL:(010)68476636-8007)


精彩图集

赞助商链接