php - sybase_connect() 错误 - “无法连接:Adaptive Server 不可用或不存在”
问题描述
尝试使用 sybase_connect() 连接到 SQLServer 时,出现以下错误:
从命令行: $> php test.php
致命错误:未捕获的错误:调用 test.php:7 中未定义的函数 sybase_connect()
通过 XAMPP 运行脚本:
警告:sybase_connect():Sybase:客户端消息:无法连接:第 7 行 test.php 中的 Adaptive Server 不可用或不存在(严重性 78)
警告:sybase_connect(): Sybase: Unable to connect in test.php on line 7
致命错误:在第 7 行的 test.php 中调用未定义函数 error()
这是我的代码:
<?php
$server = 'server.domain.com';
$username = 'user';
$password = 'pwd';
$sqlconnect = sybase_connect($server, $username, $password, 'UTF-8') or error('connect');
我在 Mac OS,PHP 5.6 上运行 XAMPP。
我尝试在命令行上通过 tsql 连接到服务器,它实际上可以工作(有和没有指定端口):
tsql -S server.domain.com -U user
tsql -S server.domain.com -U user -p 1433
我尝试在 php.ini 上激活 sybase 的扩展,但仍然遇到相同的错误:
extension=php_sybase_ct.dll
我还从stackoverflow的答案中尝试了一些随机的东西,但老实说,我在这里完全迷失了。
解决方案
AFAIK,这些sybase*
函数只能连接到旧版本的 SQL Server,并且已在 PHP 7.0 中删除,这将很快成为唯一可用的安全版本。
我建议使用 PHP sqlsrv_connect()
:
https ://www.php.net/manual/en/function.sqlsrv-connect.php
...或 PDO:https ://www.php.net/manual/en/pdo.construct .php
祝你好运!
推荐阅读
- spring - Spring @EnableAsync 注解的作用是什么,如何用好?
- python - Python ldap 返回空列表
- azure - SELECT 语句 FROM sp_execute_remote
- validation - 禁用 jsf 表单 int 验证
- jenkins - 在 jenkinsfile 内部如何获取主分支和功能分支之间的 GIT 差异
- wordpress - 如何从 wordpress 数据库中获取数据并显示到自定义网页中?
- javascript - 如何在activeadmin中正确添加jquery,只有api模式,没有application.js
- tfs - 将测试关联到 MTM 时出现未经授权的错误
- java - 尝试打印 JAVA8 收集器的结果时出现歧义错误
- core-audio - 是否可以在 AudioKit 音序器播放时修改 MusicSequnce