下面就给您讲解一下如何使用 Laravel5 和 freetds 连接 SQL Server 的方法:
1、安装相关扩展
首先,需要安装两个扩展 laravel-mssql 和 pdo-dblib。他们可以通过 composer 进行安装,执行以下命令即可:
composer require jamesdb/laravel-mssql
composer require doctrine/dbal
2、配置 catalog 和 schema
创建数据库配置的时候需要指定 serverName 和 catalog。其中,catalog 就是 SQL Server 数据库的名称。serverName 的格式为 {server name}\{instance name}
或 {server ip}:{port}
,如果你不知道具体的实例名称,可以省略实例名称。
在相关的配置文件中加入下面的配置信息:
'laravel' => [
'driver' => 'dblib',
'host' => env('DB_HOST', 'localhost:1433'),
'database' => env('DB_DATABASE', 'your_database_name'),
'username' => env('DB_USERNAME', 'your_database_username'),
'password' => env('DB_PASSWORD', 'your_database_password'),
'charset' => 'utf8',
'prefix' => '',
'options' => [
'appname' => 'laravel', // 设置应用程序名称,可以自定义
'charset' => 'UTF-8',
],
'schema' => '', // 数据库的 schema,可以不指定,这里省略
'catalog' => 'your_database_name',
],
3、测试数据库是否能正常连接
通过 Laravel Eloquent 来测试一下是否能够连接数据库。这里以访问数据库中的 User 表记录为例子,示例代码如下:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
class TestController extends Controller {
public function testDatabase() {
$user = User::find(1);
echo $user->name;
}
}
其中,User
模型是 Laravel 提供的 Eloquent 模型,在使用前需要在文件开头先 import。执行上述代码,如果能够正常输出数据库中用户名称,那么说明 freetds 已经正确连接上了 SQL Server 数据库。
4、使用 pdo-dblib 扩展连接 SQL Server
除了使用 laravel-mssql 扩展来连接 SQL Server,还可以使用 pdo-dblib 扩展直接连接 SQL Server。通过以下方式来实现:
$pdo = new \PDO("dblib:host=$host;dbname=$database", $username, $password);
其中,$host、$database、$username、$password 都是自己设定的数据配置信息。
使用 pdo-dblib 扩展连接 SQL Server 也需要下载 pdo_dblib 扩展,具体下载方式可以参考官网文档。
以上就是使用 Laravel5 和 freetds 连接 SQL Server 的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:laravel5使用freetds连接sql server的方法 - Python技术站