您现在的位置是:网站首页>软件开发>开发终端>yii2yii2
yii2连接sqlsever的一些注意点 (windows解法)
风口下的猪2023-03-15【yii2】
简介
yii2连接sqlsever一般会出现以下问题:
(1)php没有装sqlsrv扩展;
(2)软件运行的操作系统,没有装ODBC Driver驱动;
(3)项目代码中配置连接sqlsever的dsn写法不对(不能照着官方的写)
一.php依据版本安装对应的sqlsrv扩展
(1)先新建一个可访问php文件,查看php详情及扩展
如果PDO中没有sqlsrv就需要安装sqlsrv扩展
(2)下载php版本对应的sqlserv.exe,通过sqlserv.exe生成扩展文件
sqlserv.exe下载地址https://docs.microsoft.com/en-us/sql/connect/php/release-notes-php-sql-driver?view=sql-server-2017#previous-releases
如图,如果是php7.4的就下载5.8版本
点击执行下载的sqlsrv.exe生成扩展到选择的文件夹
(3)将生成的扩展php_pdo_sqlsrv_XX_nts_x64.dll和php_sqlsrv_XX_nts_x64.dll拷贝到php/ext目录下
(4)在php.ini中加入动态库并开启扩展配置
extension=php_pdo_sqlsrv_73_nts_x64.dll
extension=php_sqlsrv_73_nts_x64.dll
二.安装ODBC驱动
ODBC Driver 11 For SQL (msodbcsql.msi),注意是64还是86位
驱动下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=36434
点击安装即可。
二.项目代码中配置db连接,common/config/main-local.php中db的dsn写法调整
如果执行
报错:Error:SQLSTATE[IMSSP]: An invalid keyword 'host' was specified in the DSN string
多半是dsn写法错误
我之前的以下写法直接报host字段错误
sqlsrv:host=localhost;dbname=mydatabase
正确的规范写法如下:
- MySQL, MariaDB:
mysql:host=localhost;dbname=mydatabase
- SQLite:
sqlite:/path/to/database/file
- PostgreSQL:
pgsql:host=localhost;port=5432;dbname=mydatabase
- CUBRID:
cubrid:dbname=demodb;host=localhost;port=33000
- MS SQL Server (via sqlsrv driver):
sqlsrv:Server=localhost;Database=mydatabase
- MS SQL Server (via dblib driver):
dblib:host=localhost;dbname=mydatabase
- MS SQL Server (via mssql driver):
mssql:host=localhost;dbname=mydatabase
- Oracle:
oci:dbname=//localhost:1521/mydatabase
eg:
很赞哦! (0)
上一篇:yii2实现多个不同数据库连接
相关阅读 (同一栏目)
- yii控制器及路由
- Class yii\filters\VerbFilter ----操作过滤器
- Class yii\filters\Cors ----CORS 跨域资源共享控制筛选器
- Class yii\filters\auth\CompositeAuth
- Class yii\filters\auth\HttpBearerAuth
- yii2请求获取参数
- yii2目录结构说明
- yii2 系统定义的路径别名
- yii2模型中attributeLabels()的作用
- yii2模型中定义对应数据库和验证规则
- yii2模型中块赋值$model -> attributes = $data;
- 理解yii2模型中findOne()、findAll()
- yii2模型增加数据
- yii2模型修改数据
- yii2模型删除数据
- yii2实现多个不同数据库连接
- yii2连接sqlsever的一些注意点 (windows解法)
- yii2和tp链式查询时where的区别
- yii2 关联查询总结
栏目目录
标签云
站点信息
- 文章统计:528篇
- 移动端访问:扫码进入SQ3R
