0 フォロワー

クラス yii\db\mssql\TableSchema

継承yii\db\mssql\TableSchema » yii\db\TableSchema » yii\base\BaseObject
実装yii\base\Configurable
利用可能なバージョン2.0
ソースコード https://github.com/yiisoft/yii2/blob/master/framework/db/mssql/TableSchema.php

TableSchema は、データベーステーブルのメタデータを表します。

パブリックプロパティ

継承されたプロパティを非表示

プロパティ 説明 定義元
$catalogName string|null このテーブルが属するカタログ (データベース) の名前。 yii\db\mssql\TableSchema
$columnNames 配列 カラム名のリスト。 yii\db\TableSchema
$columns yii\db\ColumnSchema[] このテーブルのカラムメタデータ。 yii\db\TableSchema
$foreignKeys 配列 このテーブルの外部キー。 yii\db\TableSchema
$fullName string このテーブルの完全名。スキーマ名のプレフィックス (存在する場合) を含みます。 yii\db\TableSchema
$name string このテーブルの名前。 yii\db\TableSchema
$primaryKey string[] このテーブルの主キー。 yii\db\TableSchema
$schemaName string このテーブルが属するスキーマの名前。 yii\db\TableSchema
$sequenceName string|null 主キーのシーケンス名。 yii\db\TableSchema

パブリックメソッド

継承されたメソッドを非表示

メソッド 説明 定義元
__call() クラスメソッドではない、名前付きメソッドを呼び出します。 yii\base\BaseObject
__construct() コンストラクタ。 yii\base\BaseObject
__get() オブジェクトのプロパティの値を返します。 yii\base\BaseObject
__isset() プロパティが設定されているか、つまり定義されていて null でないかを確認します。 yii\base\BaseObject
__set() オブジェクトのプロパティの値を設定します。 yii\base\BaseObject
__unset() オブジェクトのプロパティを null に設定します。 yii\base\BaseObject
canGetProperty() プロパティが読み取り可能かどうかを示す値を返します。 yii\base\BaseObject
canSetProperty() プロパティが設定可能かどうかを示す値を返します。 yii\base\BaseObject
className() このクラスの完全修飾名を返します。 yii\base\BaseObject
fixPrimaryKey() このテーブルの主キーを手動で指定します。 yii\db\TableSchema
getColumn() 指定された名前のカラムメタデータを取得します。 yii\db\TableSchema
getColumnNames() このテーブルのすべてのカラムの名前を返します。 yii\db\TableSchema
hasMethod() メソッドが定義されているかどうかを示す値を返します。 yii\base\BaseObject
hasProperty() プロパティが定義されているかどうかを示す値を返します。 yii\base\BaseObject
init() オブジェクトを初期化します。 yii\base\BaseObject

プロパティの詳細

継承されたプロパティを非表示

$catalogName パブリックプロパティ

このテーブルが属するカタログ (データベース) の名前。デフォルトは null で、カタログがない (または現在のデータベース) ことを意味します。

public string|null $catalogName null

メソッドの詳細

継承されたメソッドを非表示

__call() パブリックメソッド

定義元: yii\base\BaseObject::__call()

クラスメソッドではない、名前付きメソッドを呼び出します。

不明なメソッドが呼び出されたときに暗黙的に呼び出される PHP マジックメソッドであるため、このメソッドを直接呼び出さないでください。

public mixed __call ( $name, $params )
$name string

メソッド名

$params 配列

メソッドパラメータ

戻り値 mixed

メソッドの戻り値

例外 yii\base\UnknownMethodException

不明なメソッドを呼び出すとき

                public function __call($name, $params)
{
    throw new UnknownMethodException('Calling unknown method: ' . get_class($this) . "::$name()");
}

            
__construct() パブリックメソッド

定義元: yii\base\BaseObject::__construct()

コンストラクタ。

デフォルトの実装では、次の2つのことを行います。

  • 指定された構成 $config でオブジェクトを初期化します。
  • init() を呼び出します。

このメソッドが子クラスでオーバーライドされている場合は、

  • コンストラクタの最後のパラメータが、ここにある $config のような構成配列になることをお勧めします。
  • コンストラクタの最後に親の実装を呼び出します。
public void __construct ( $config = [] )
$config 配列

オブジェクトのプロパティを初期化するために使用される名前と値のペア

                public function __construct($config = [])
{
    if (!empty($config)) {
        Yii::configure($this, $config);
    }
    $this->init();
}

            
__get() public メソッド

定義元: yii\base\BaseObject::__get()

オブジェクトのプロパティの値を返します。

$value = $object->property; を実行するときに暗黙的に呼び出されるPHPのマジックメソッドであるため、このメソッドを直接呼び出さないでください。

参照: __set().

public mixed __get ( $name )
$name string

プロパティ名

戻り値 mixed

プロパティ値

例外 yii\base\UnknownPropertyException

プロパティが定義されていない場合

例外 yii\base\InvalidCallException

プロパティが書き込み専用の場合

                public function __get($name)
{
    $getter = 'get' . $name;
    if (method_exists($this, $getter)) {
        return $this->$getter();
    } elseif (method_exists($this, 'set' . $name)) {
        throw new InvalidCallException('Getting write-only property: ' . get_class($this) . '::' . $name);
    }
    throw new UnknownPropertyException('Getting unknown property: ' . get_class($this) . '::' . $name);
}

            
__isset() public メソッド

定義元: yii\base\BaseObject::__isset()

プロパティが設定されているか、つまり定義されていて null でないかを確認します。

isset($object->property) を実行するときに暗黙的に呼び出されるPHPのマジックメソッドであるため、このメソッドを直接呼び出さないでください。

プロパティが定義されていない場合、false が返されることに注意してください。

参照: https://www.php.net/manual/en/function.isset.php.

public boolean __isset ( $name )
$name string

プロパティ名またはイベント名

戻り値 boolean

指定されたプロパティが設定されているか(nullではないか)どうか。

                public function __isset($name)
{
    $getter = 'get' . $name;
    if (method_exists($this, $getter)) {
        return $this->$getter() !== null;
    }
    return false;
}

            
__set() public メソッド

定義元: yii\base\BaseObject::__set()

オブジェクトのプロパティの値を設定します。

$object->property = $value; を実行するときに暗黙的に呼び出されるPHPのマジックメソッドであるため、このメソッドを直接呼び出さないでください。

参照: __get().

public void __set ( $name, $value )
$name string

プロパティ名またはイベント名

$value mixed

プロパティ値

例外 yii\base\UnknownPropertyException

プロパティが定義されていない場合

例外 yii\base\InvalidCallException

プロパティが読み取り専用の場合

                public function __set($name, $value)
{
    $setter = 'set' . $name;
    if (method_exists($this, $setter)) {
        $this->$setter($value);
    } elseif (method_exists($this, 'get' . $name)) {
        throw new InvalidCallException('Setting read-only property: ' . get_class($this) . '::' . $name);
    } else {
        throw new UnknownPropertyException('Setting unknown property: ' . get_class($this) . '::' . $name);
    }
}

            
__unset() public メソッド

定義元: yii\base\BaseObject::__unset()

オブジェクトのプロパティを null に設定します。

unset($object->property) を実行するときに暗黙的に呼び出されるPHPのマジックメソッドであるため、このメソッドを直接呼び出さないでください。

プロパティが定義されていない場合、このメソッドは何も行いません。プロパティが読み取り専用の場合、例外がスローされます。

参照: https://www.php.net/manual/en/function.unset.php.

public void __unset ( $name )
$name string

プロパティ名

例外 yii\base\InvalidCallException

プロパティが読み取り専用の場合。

                public function __unset($name)
{
    $setter = 'set' . $name;
    if (method_exists($this, $setter)) {
        $this->$setter(null);
    } elseif (method_exists($this, 'get' . $name)) {
        throw new InvalidCallException('Unsetting read-only property: ' . get_class($this) . '::' . $name);
    }
}

            
canGetProperty() public メソッド

定義元: yii\base\BaseObject::canGetProperty()

プロパティが読み取り可能かどうかを示す値を返します。

プロパティが読み取り可能である条件

  • クラスに指定された名前に関連付けられた getter メソッドがある場合(この場合、プロパティ名は大文字と小文字を区別しません)。
  • クラスに指定された名前のメンバ変数がある場合 ($checkVars が true の場合)。

参照: canSetProperty().

public boolean canGetProperty ( $name, $checkVars true )
$name string

プロパティ名

$checkVars boolean

メンバ変数をプロパティとして扱うかどうか

戻り値 boolean

プロパティが読み取り可能かどうか

                public function canGetProperty($name, $checkVars = true)
{
    return method_exists($this, 'get' . $name) || $checkVars && property_exists($this, $name);
}

            
canSetProperty() public メソッド

定義元: yii\base\BaseObject::canSetProperty()

プロパティが設定可能かどうかを示す値を返します。

プロパティが書き込み可能である条件

  • クラスに指定された名前に関連付けられた setter メソッドがある場合(この場合、プロパティ名は大文字と小文字を区別しません)。
  • クラスに指定された名前のメンバ変数がある場合 ($checkVars が true の場合)。

参照: canGetProperty().

public boolean canSetProperty ( $name, $checkVars true )
$name string

プロパティ名

$checkVars boolean

メンバ変数をプロパティとして扱うかどうか

戻り値 boolean

プロパティが書き込み可能かどうか

                public function canSetProperty($name, $checkVars = true)
{
    return method_exists($this, 'set' . $name) || $checkVars && property_exists($this, $name);
}

            
className() public static メソッド
2.0.14 から非推奨。 PHP >= 5.5 では、代わりに ::class を使用してください。

定義元: yii\base\BaseObject::className()

このクラスの完全修飾名を返します。

public static string className ( )
戻り値 string

このクラスの完全修飾名。

                public static function className()
{
    return get_called_class();
}

            
fixPrimaryKey() public メソッド

定義元: yii\db\TableSchema::fixPrimaryKey()

このテーブルの主キーを手動で指定します。

public void fixPrimaryKey ( $keys )
$keys string|array

プライマリキー(複合キーも可能)

例外 yii\base\InvalidArgumentException

指定されたキーがテーブルに見つからない場合。

                public function fixPrimaryKey($keys)
{
    $keys = (array) $keys;
    $this->primaryKey = $keys;
    foreach ($this->columns as $column) {
        $column->isPrimaryKey = false;
    }
    foreach ($keys as $key) {
        if (isset($this->columns[$key])) {
            $this->columns[$key]->isPrimaryKey = true;
        } else {
            throw new InvalidArgumentException("Primary key '$key' cannot be found in table '{$this->name}'.");
        }
    }
}

            
getColumn() public メソッド

定義元: yii\db\TableSchema::getColumn()

指定された名前のカラムメタデータを取得します。

これは、名前付きの列が存在しない場合でも取得するのに便利なメソッドです。

public yii\db\ColumnSchema|null getColumn ( $name )
$name string

列名

戻り値 yii\db\ColumnSchema|null

名前付き列のメタデータ。名前付きの列が存在しない場合は Null。

                public function getColumn($name)
{
    return isset($this->columns[$name]) ? $this->columns[$name] : null;
}

            
getColumnNames() public メソッド

定義元: yii\db\TableSchema::getColumnNames()

このテーブルのすべてのカラムの名前を返します。

public array getColumnNames ( )
戻り値 配列

列名のリスト

                public function getColumnNames()
{
    return array_keys($this->columns);
}

            
hasMethod() public メソッド

定義元: yii\base\BaseObject::hasMethod()

メソッドが定義されているかどうかを示す値を返します。

デフォルトの実装は、PHP関数 method_exists() の呼び出しです。phpマジックメソッド__call()を実装した場合は、このメソッドをオーバーライドできます。

public boolean hasMethod ( $name )
$name string

メソッド名

戻り値 boolean

メソッドが定義されているかどうか

                public function hasMethod($name)
{
    return method_exists($this, $name);
}

            
hasProperty() public メソッド

定義元: yii\base\BaseObject::hasProperty()

プロパティが定義されているかどうかを示す値を返します。

プロパティが定義されるのは、以下のいずれかの場合です。

  • クラスが、指定された名前に関連付けられたゲッターまたはセッターメソッドを持っている場合 (この場合、プロパティ名は大小文字を区別しません)。
  • クラスに指定された名前のメンバ変数がある場合 ($checkVars が true の場合)。

こちらもご覧ください

public boolean hasProperty ( $name, $checkVars true )
$name string

プロパティ名

$checkVars boolean

メンバ変数をプロパティとして扱うかどうか

戻り値 boolean

プロパティが定義されているかどうか

                public function hasProperty($name, $checkVars = true)
{
    return $this->canGetProperty($name, $checkVars) || $this->canSetProperty($name, false);
}

            
init() public メソッド

定義元: yii\base\BaseObject::init()

オブジェクトを初期化します。

このメソッドは、オブジェクトが指定された構成で初期化された後、コンストラクターの最後に呼び出されます。

public void init ( )

                public function init()
{
}