thinkphp5.1 连接sqlserver数据库时遇到的问题

浏览:1927 发布日期:2020/09/07 分类:ThinkPHP5专区 关键字: thinkphp5.1 sqlserver
貌似发现了一个bug;
当连接sqlserver数据库时:
如果配置正常,能正常返回数据;
如果连接不上,则没有返回异常:
我用过官方文档的各种方式测试也是一样,用PDO方式,sqlsrv_connect方式都测试过了,都是出现同一个问题

示例代码:
database.php配置文件代码:
//数据库配置-本地测试-test
'db_local_test' => [
// 数据库类型-sqlserver
'type' => 'sqlsrv',
// 服务器地址,不可使用127.0.0.1,否则报错:SQLSTATE[08001]: [Microsoft][ODBC Driver 17 for SQL Server]命名管道提供程序: 无法打开与 SQL Server 的连接 [5].
'hostname' => 'localhost',
// 端口,保留空,不可填1433,否则报错:SQLSTATE[08001]: [Microsoft][ODBC Driver 17 for SQL Server]TCP 提供程序: 由于目标计算机积极拒绝,无法连接。
'hostport' => '',
// 数据库名
'database' => 'test',
// 数据库用户名
'username' => 'sa',
// 数据库密码
'password' => '123456',
// 连接dsn
'dsn' => 'sqlsrv:Server=localhost;Database=test',
// 数据库连接参数
'params' => [],
// 数据库编码-UTF-8
'charset' => 'UTF-8',
// 数据库视图表
'view_table' => 'View_test_user',
],
代码:
//获取系统配置-本地测试-test
$configLocal = config::get('database.db_local_test');
$view_table = $configLocal['view_table'];
//示例sql:SELECT * FROM View_test_user WHERE id = 1
$sql = 'SELECT * FROM View_test_user ';
$res = Db::connect($configLocal)->query($sql);
return $res;

当填写的服务器正确并能正常访问时,是有数据返回的,
当配置正确,但服务器连接不上时,是没有异常返回的,该怎么解决?
最佳答案
评论( 相关
后面还有条评论,点击查看>>