laravel5使用freetds连接sql server的方法


Posted in PHP onDecember 07, 2018

相关版本

系统ubuntu 16.04, 使用的PHP版本是7.0.30, sqlserver 2012, freetds为0.92 Laravel5.5和5.4都测试过了

什么是FreeTDS 

简单的说FreeTDS是一个程序库,可以实现在Linux系统下访问微软的SQL数据库! FreeTDS 是一个开源的程序库,是TDS(表列数据流 )协议的再次实现。它可以被用在Sybase的db-lib或者ct-lib库。它也包含一个ODBC的库。允许许多开源的应用软件比如Perl和PHP(或者你自己的c或C++程序)去连接到Sybase或 Microsoft SQL服务器。FreeTDS 以源码的形式被发布,几乎可以在任何操作系统上编译。意味着Unix和类Unix系统(包括著名的分支如Interix和QNX),还有Win32,VMS,和OSX。

本文将给大家详细介绍laravel5使用freetds连接sql server的相关内容,下面话不多说了,来一起看看详细的介绍吧

步骤如下

安装php驱动

sudo apt-get install php7.0-odbc 
sudo apt install php7.0-sybase

安装freetds

sudo apt-get install freetds-bin freetds-common tdsodbc odbcinst unixodbc unixodbc-dev 
sudo mv /etc/odbcinst.ini /etc/odbcinst.ini.bak 
sudo cp /usr/share/tdsodbc/odbcinst.ini /etc/

配置freetds

sudo vim /etc/freetds/freetds.conf

修改配置

[global]
 tds version = 8.0 # TDS version, ref <a href="http://www.freetds.org/userguide/choosingtdsprotocol.htm" rel="external nofollow" target="_blank">this</a>.
 client charset = UTF-8
 text size = 20971520
[Server2012] #自定义名称,后面需要使用
 host = {yourdomain}.database.windows.net // ip地址或域名
 port = 1433
 tds version = 8.0 #8.0为2012其他自行测试

测试SQLSERVER

TDSVER=8.0 tsql -H my_server_host -p 1433 -U my_user -P my_password -D my_database

配置Laravel5

打开config/database.php在connections中添加配置,驱动使用sqlsrv

'mssql' => [
  'driver' => 'sqlsrv',
  'host' => 'Server2012', // 这个对应freetds.conf的配置名称
  'port' => '1433',
  'database' => env('DB_DATABASE', '数据库'),
  'username' => env('DB_USERNAME', '用户'),
  'password' => env('DB_PASSWORD', '密码'),
  'charset' => 'utf8',
  'collation' => 'utf8_unicode_ci',
  'prefix' => '',
  'strict' => false,
  'engine' => null,
 ],

多数据库

如果你用了mysql又想用sqlserver的部份信息,个人项目原因,但一般的做法是sqlserver的系统写API让Mysql系统的调用,但这次偷偷懒,就两个一起用了

在Model中 加入protected $connection = 'mssql';并使用protected $table = 'EMPLOYEE'; 指明数据表,就可以不用每次在Controller写连接了.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
用PHP实现多级树型菜单
Oct 09 PHP
php实现的仿阿里巴巴实现同类产品翻页
Dec 11 PHP
php实现的树形结构数据存取类实例
Nov 29 PHP
服务器迁移php版本不同可能诱发的问题
Dec 22 PHP
PHP Smarty模版简单使用方法
Mar 30 PHP
php自定义函数实现汉字转换utf8编码的方法
Sep 29 PHP
Zend Framework入门教程之Zend_Mail用法示例
Dec 08 PHP
yii2中dropDownList实现二级和三级联动写法
Apr 26 PHP
php 使用curl模拟ip和来源进行访问的实现方法
May 02 PHP
PHP实现权限管理功能示例
Sep 22 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
Apr 10 PHP
Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
May 08 PHP
php多进程模拟并发事务产生的问题小结
Dec 07 #PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
Dec 07 #PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
Dec 06 #PHP
PHP实现简易计算器功能
Aug 28 #PHP
laravel5实现微信第三方登录功能
Dec 06 #PHP
PHP实现简单计算器小程序
Aug 28 #PHP
ThinkPHP 3.2.3实现加减乘除图片验证码
Dec 05 #PHP
You might like
php中stream(流)的用法
2014/03/25 PHP
PHP实现通过正则表达式替换回调的内容标签
2015/06/15 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
2016/10/18 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
Yii 框架控制器创建使用及控制器响应操作示例
2019/10/14 PHP
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
JS小游戏之仙剑翻牌源码详解
2014/09/25 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
js判断图片加载完成后获取图片实际宽高的方法
2016/02/25 Javascript
javascript创建对象的几种模式介绍
2016/05/06 Javascript
JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)
2016/05/20 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
2017/08/31 Javascript
BACKBONE.JS 简单入门范例
2017/10/17 Javascript
angular4强制刷新视图的方法
2018/10/09 Javascript
解决vue的过渡动画无法正常实现问题
2019/10/31 Javascript
vue穿梭框实现上下移动
2021/01/29 Vue.js
[01:10:16]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第一局
2016/02/27 DOTA
[02:36]DOTA2上海特锦赛 回忆电竞生涯的重要瞬间
2016/03/25 DOTA
Python线程中对join方法的运用的教程
2015/04/09 Python
详细解读Python中的__init__()方法
2015/05/02 Python
Python实现递归遍历文件夹并删除文件
2016/04/18 Python
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
python实战教程之自动扫雷
2018/07/13 Python
详解python解压压缩包的五种方法
2019/07/05 Python
Kears+Opencv实现简单人脸识别
2019/08/28 Python
Python中实现输入超时及如何通过变量获取变量名
2020/01/18 Python
顺丰快递Java软件工程师面试题
2015/07/31 面试题
项目施工员岗位职责
2014/03/09 职场文书
有趣的广告词
2014/03/18 职场文书
超市优秀员工获奖感言
2014/08/15 职场文书
学生夜不归宿检讨书
2014/09/23 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
介绍信怎么写
2015/05/05 职场文书
2016年大学迎新工作总结
2015/10/14 职场文书
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL