0 关注者

类 yii\db\mssql\DBLibPDO

继承关系yii\db\mssql\DBLibPDO » PDO
可用版本2.0.41
源代码 https://github.com/yiisoft/yii2/blob/master/framework/db/mssql/DBLibPDO.php

这是 DBLIB 驱动程序的默认 PDO 类的扩展。

它为 DBLIB 驱动程序中实现不当的功能提供了解决方法。

公共方法

隐藏继承的方法

方法 描述 定义于
getAttribute() 检索数据库连接属性。 yii\db\mssql\DBLibPDO
lastInsertId() 返回最后插入 ID 的值。 yii\db\mssql\DBLibPDO

方法详情

隐藏继承的方法

getAttribute() 公共方法

检索数据库连接属性。

有必要覆盖 PDO 的方法,因为某些 MSSQL PDO 驱动程序(例如 dblib)不支持获取属性。

public mixed getAttribute ( $attribute )
$attribute 整数

PDO::ATTR_* 常量之一。

返回值 混合

成功调用将返回请求的 PDO 属性的值。不成功的调用将返回 null。

                #[\ReturnTypeWillChange]
public function getAttribute($attribute)
{
    try {
        return parent::getAttribute($attribute);
    } catch (\PDOException $e) {
        switch ($attribute) {
            case self::ATTR_SERVER_VERSION:
                return $this->query("SELECT CAST(SERVERPROPERTY('productversion') AS VARCHAR)")->fetchColumn();
            default:
                throw $e;
        }
    }
}

            
lastInsertId() 公共方法

返回最后插入 ID 的值。

public 整数 lastInsertId ( $name null )
$name 字符串|null

序列名称。默认为 null。

返回值 整数

最后插入的 ID 值。

                #[\ReturnTypeWillChange]
public function lastInsertId($name = null)
{
    return $this->query('SELECT CAST(COALESCE(SCOPE_IDENTITY(), @@IDENTITY) AS bigint)')->fetchColumn();
}