0 追蹤者

Class 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() 公開方法

檢索資料庫連線屬性。

由於某些 MSSQL PDO 驅動程式(例如 dblib)不支援取得屬性,因此有必要覆寫 PDO 的方法。

public mixed getAttribute ( $attribute )
$attribute integer

PDO::ATTR_* 常數之一。

return mixed

成功呼叫會返回請求的 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 integer lastInsertId ( $name null )
$name string|null

序列名稱。預設為 null。

return integer

最後插入的 ID 值。

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