tp5连接SQLServer数据库及多个数据库切换

浏览:13457 发布日期:2018/04/20 分类:技术分享 关键字: thinkphp5 数据库连接 数据库切换
废话不说,直接上代码:

==================== 连接SQLServer ===========================

1、确保你的PHP有 php_sqlsrv 和 php_pdo_sqlsrv 扩展。
我用的是phpStudy,PHP版本是 5.5.38,所以我下载的扩展是 php_sqlsrv_55_nts.dll 和 php_pdo_sqlsrv_55_nts.dll ,将扩展放到 php/ext文件夹下面。

2、开启(加入) php_sqlsrv 和 php_pdo_sqlsrv 扩展
找到php.in文件并打开,将 ;extension=php_sqlsrv_55_nts.dll 和 ;extension=php_pdo_sqlsrv_55_nts.dll 前面的分号去掉, 有的朋友可能没有找到这两项,那么直接加上 extension=php_sqlsrv_55_nts.dll 和 extension=php_pdo_sqlsrv_55_nts.dll 即可,最后,重启phpstydy。

3、配置你的database.php文件 (下面是我的配置,没有贴出来的都是一样的)
    // 数据库类型
    'type'            => 'sqlsrv',
    // 服务器地址
    'hostname'        => '127.0.0.1',   
    // 数据库名
    'database'        => 'QPTreasureDB',
    // 用户名
    'username'        => '你的用户名',
    // 密码
    'password'        => '你的密码',
    // 端口
    'hostport'        => '1433',
   
4、配置好之后就可以使用了(数据库操作与mysql的数据库操作是一样的),但是这里有一个坑,SQLServer数据库大写是可以用的,但是用tp5数据库的方法时,大写会被自动转化为下划线+小写字母(比如 MyName 会被转化为 My_name),这里我百度了,还没有找到合适的方法解决,暂时使用原生查询(query 和 execute)来写的。


==================== SQLServer多库切换(这个是在博客上看到的,亲试有用,分享给大家) ===========================

1、首先要连接上你的SQLServer;

2、将你配置好的database.php 文件复制一份,命名为 database2.php,并写入第二个数据库的配置;

3、在你的config.php文件中先引入 database2.php 文件(代码: $db_con2 = require_once('database2.php'); ),并在最后加上 'db_con2' => $db_con2,

4、控制器里面就可以使用了
如:
$db = Db::connect('db_con2');
$db->query('select * from user');

(PS :附件里面是PHP的扩展,n2里面是php5的,n1里面是php7的,大家根据需要选择)
+++++++++++++++++ the end ++++++++++++++++++++


附件 扩展.rar ( 556.61 KB 下载:351 次 )

最佳答案
评论() 相关
后面还有条评论,点击查看>>