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缓存类代码(附详细说明)
Jun 09 PHP
PHP实现的QQ空间g_tk加密算法
Jul 09 PHP
php轻量级的性能分析工具xhprof的安装使用
Aug 12 PHP
php简单日历函数
Oct 28 PHP
PHP简单日历实现方法
Jul 20 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
Nov 20 PHP
简单谈谈PHP中的Reload操作
Dec 12 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
Nov 17 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
PHP convert_cyr_string()函数讲解
Feb 13 PHP
PHP小程序支付功能完整版【基于thinkPHP】
Mar 26 PHP
php设计模式之单例模式用法经典示例分析
Sep 20 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
Get或Post提交值的非法数据处理
2006/10/09 PHP
如何获知PHP程序占用多少内存(memory_get_usage)
2012/09/23 PHP
访问编码后的中文URL返回404错误的解决方法
2014/08/20 PHP
在Debian系统下配置LNMP的教程
2015/07/09 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
2017/11/13 PHP
php结合imgareaselect实现图片裁剪
2015/07/05 Javascript
基于jquery实现左右按钮点击的图片切换效果
2021/01/27 Javascript
jQuery自适应轮播图插件Swiper用法示例
2016/08/24 Javascript
jquery select2的使用心得(推荐)
2016/12/04 Javascript
JavaScript实现同一个页面打开多张图片
2016/12/29 Javascript
bootstrap table配置参数例子
2017/01/05 Javascript
vue2.0实现音乐/视频播放进度条组件
2018/06/06 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
JavaScript仿京东秒杀倒计时
2020/03/17 Javascript
Python算法输出1-9数组形成的结果为100的所有运算式
2017/11/03 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
2019/02/13 Python
对python中GUI,Label和Button的实例详解
2019/06/27 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
2019/10/11 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
python多维数组分位数的求取方式
2020/03/03 Python
matplotlib更改窗口图标的方法示例
2021/02/03 Python
深入理解css中vertical-align属性
2017/04/18 HTML / CSS
西班牙家用电器和电子产品购物网站:Mi Electro
2019/02/25 全球购物
会计专业毕业生推荐信
2013/11/05 职场文书
我的动漫时代的创业计划书范文
2014/01/27 职场文书
关于保护环境的标语
2014/06/09 职场文书
护士工作失误检讨书
2014/09/14 职场文书
故意伤害人身损害赔偿协议书
2014/11/19 职场文书
交通事故死亡赔偿协议书
2014/12/03 职场文书
工程部岗位职责范本
2015/04/11 职场文书
如何书写你的职业生涯规划书?
2019/06/27 职场文书
送给小学生的暑假礼物!小学生必背99首古诗
2019/07/02 职场文书
晶体管单管来复再生式收音机
2021/04/22 无线电
判断Python中的Nonetype类型
2021/05/25 Python
解决WINDOWS电脑开机后桌面没有任何图标
2022/04/09 数码科技