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编写大型网站问题集
Mar 06 PHP
PHP中for循环语句的几种变型
Mar 16 PHP
深思 PHP 数组遍历的差异(array_diff 的实现)
Mar 23 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
Nov 12 PHP
Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
Jul 23 PHP
Linux下PHP加速器APC的安装与配置笔记
Oct 24 PHP
php实现的简单日志写入函数
Mar 31 PHP
typecho插件编写教程(五):核心代码
May 28 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
Aug 01 PHP
PHP中静态变量的使用方法实例分析
Dec 01 PHP
Mac系统完美安装PHP7详细教程
Jun 06 PHP
PHP curl批处理及多请求并发实现方法分析
Aug 15 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
php5编程中的异常处理详细方法介绍
2008/07/29 PHP
PHP以指定字段为索引返回数据库所取的数据数组
2013/06/30 PHP
利用yahoo汇率接口实现实时汇率转换示例 汇率转换器
2014/01/14 PHP
PHP反向代理类代码
2014/08/15 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
PHP实现活动人选抽奖功能
2017/04/19 PHP
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
2012/02/03 Javascript
JS对img进行操作(换图片/切图/轮换/停止)
2013/04/17 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
每天一篇javascript学习小结(Date对象)
2015/11/13 Javascript
Nodejs的express使用教程
2015/11/23 NodeJs
javascript html5摇一摇功能的实现
2016/04/19 Javascript
使用bootstrap validator的remote验证代码经验分享(推荐)
2016/09/21 Javascript
如何使用Bootstrap 按钮实例详解
2017/03/29 Javascript
解决option标签selected=&quot;selected&quot;属性失效的问题
2017/11/06 Javascript
nodejs图片处理工具gm用法小结
2018/12/12 NodeJs
微信小程序HTTP接口请求封装的实现
2019/02/21 Javascript
微信网页登录逻辑与实现方法
2019/04/29 Javascript
node.js使用zlib模块进行数据压缩和解压操作示例
2020/02/12 Javascript
学习python (2)
2006/10/31 Python
python 删除非空文件夹的实例
2018/04/26 Python
python高阶爬虫实战分析
2018/07/29 Python
python opencv minAreaRect 生成最小外接矩形的方法
2019/07/01 Python
python 两个一样的字符串用==结果为false问题的解决
2020/03/12 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
python爬取音频下载的示例代码
2020/10/19 Python
CSS3 实现的加载动画
2020/12/07 HTML / CSS
深入探究HTML5的History API
2015/07/09 HTML / CSS
俄罗斯首家面向中国消费者的一站式购物网站:Wruru
2020/05/08 全球购物
语文教育专业应届生求职信
2013/11/23 职场文书
安全大检查反思材料
2014/01/31 职场文书
村党支部换届选举方案
2014/05/02 职场文书
2015年司法所工作总结
2015/04/27 职场文书
浅谈MySQL中的六种日志
2022/03/23 MySQL
Mysql将字符串按照指定字符分割的正确方法
2022/05/30 MySQL