ITPub博客

首页 > 数据库 > > php访问SAP Sybse SQL Anywhere 数据库

php访问SAP Sybse SQL Anywhere 数据库

作者:gaokeke123 时间:2022-04-06 14:46:36 0 删除 编辑

环境:

Windows 2008服务器

Apache 2.2 + php 5.3.22



首先

你用 http://localhost/phpinfo.php代码检查一下,php是Thread Safe的吗?php是VC6还是VC9编译的?

如果是VC6编译的,没戏,SAP Sybse SQL Anywhere的Windows版本PHP Module驱动都是VC9编译的。



建议

SQL Anywhere升级到最新补丁



然后

去SAP Sybse SQL Anywhere的PHP Module驱动下载驱动 http://scn.sap.com/docs/DOC-40537

注意:貌似里面的Windows驱动都是VC9(Visual Studio 2010)编译的

注意:驱动分Thread Safe和Single Threaded,





编辑php.ini
extension_dir = "ext"
extension=php-5.3.22_sqlanywhere.dll
;SQL Server 2008 driver

;extension=php_sqlsrv_53_ts.dll
;extension=php_pdo_sqlsrv_53_ts.dll


编写一个测试程序

htdocs\sqla.php

内容如下:

<html>
<body>
<p>Record page hits</p>
<?php
$conn = sasql_connect("uid=dba;pwd=sql;ServerName=afariadb;CommLinks=tcpip(host=127.0.0.1;port=2638)");
sasql_query($conn,
"CREATE TABLE IF NOT EXISTS hits (hit TIMESTAMP)");
sasql_query($conn,
"INSERT INTO hits VALUES(now(*))");
$result = sasql_query($conn,
"SELECT TOP 10 hit FROM hits ORDER BY hit DESC");
if ($result) {
echo "<table border='1'>\n";
while ($obj = sasql_fetch_object($result)) {
echo "<tr>\n";
echo "<td>$obj->hit</td>\n";
echo "</tr>\n";
}
sasql_free_result($result);
echo "</table>\n";
}
sasql_close($conn);
?>
</body></html>


多次运行的结果如下:

Record page hits
2013-12-21 18:07:55.857
2013-12-21 17:24:25.565
2013-12-21 17:24:25.362
2013-12-21 17:24:25.066
2013-12-21 17:24:24.442
2013-12-21 17:24:22.913



=============================

后记:

貌似目前SAP Sybse SQL Anywhere没有相应的PHP PDO驱动

但是你可以用pdo_odbc去访问SAP Sybse SQL Anywhere数据库

参考:http://stackoverflow.com/questions/16473568/codeigniter-sybase-database-configuration


————————————————
版权声明:本文为CSDN博主「杨江」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/berryreload/article/details/17469633

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26692020/viewspace-3133110/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
大家好

注册时间:2013-08-14

  • 博文量
    1432
  • 访问量
    31659