realestateconz/mssql-bundle

此包已被弃用且不再维护。未建议替代包。

Microsoft SQL Server Bundle for Symfony 2

安装量: 402,215

依赖项: 0

建议者: 0

安全性: 0

星级: 39

关注者: 25

分支: 65

开放性问题: 16

类型:symfony-bundle

2.1.0 2013-12-08 21:55 UTC

This package is not auto-updated.

Last update: 2020-04-16 11:45:58 UTC


README

realestate.co.nz仍然使用此包,但它属于正在逐步淘汰的遗留代码。包的功能有限,已被Doctrine SQLServer支持所取代。

如果您需要Doctrine DBLib驱动程序,类似https://packagist.org.cn/packages/leaseweb/doctrine-pdo-dblib的包应该可以工作。

如果您希望继续使用此库,您可以将其分叉并自行维护。此包将不再进行进一步的开发。

安装

步骤1. 安装MssqlBundle

realestate/mssql-bundle添加到composer.json

"require": {
    ....
    "realestateconz/mssql-bundle": "master-dev"
},

然后运行

$ php composer.phar install

步骤2. 配置DBAL的连接以使用MssqlBundle

在config.yml中,删除"driver"参数并添加"driver_class"代替

doctrine:
    dbal:
        default_connection:     default
        connections:
            default:
                driver_class:   Realestate\MssqlBundle\Driver\PDODblib\Driver
                host:           %database_host%
                dbname:         %database_prefix%%database_name%
                user:           %database_user%
                password:       %database_password%

步骤3. 启用包

最后,在kernel中启用该包

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Realestate\MssqlBundle\RealestateMssqlBundle(),
    );
}

注意

先决条件

此驱动程序需要版本8.0(从http://www.ubuntitis.com/?p=64),因为默认的4.2版本不支持UTF

在/etc/freetds/freetds.conf中,将tds version = 4.2更改为tds version = 8.0

NVARCHAR & NTEXT数据类型

NVARCHAR & NTEXT不受支持。在SQL 2000 SP4或更高版本、SQL 2005或SQL 2008中,如果您执行返回NTEXT类型数据的查询,可能会遇到以下异常:_mssql.MssqlDatabaseError: SQL Server消息4004,严重性16,状态1,行1:在只使用Unicode的校对或ntext数据中不能将Unicode数据发送给使用DB-Library(如ISQL)或ODBC版本3.7或更早版本的客户端。

这意味着由于FTREETDS的不足,SQL Server无法将Unicode数据发送到FTREETDS。您必须将该数据CAST或CONVERT为等效的NVARCHAR数据类型,该数据类型不会表现出此行为。