CakePHP
  • 文档
    • 书籍
    • API
    • 视频
    • 报告安全问题
    • 隐私政策
    • 标识和商标
  • 商业解决方案
  • 周边商品
  • 公路旅行
  • 团队
  • 社区
    • 社区
    • 参与进来
    • 问题(Github)
    • Bakery
    • 精选资源
    • 培训
    • 聚会
    • 我的CakePHP
    • CakeFest
    • 时事通讯
    • 领英
    • 优酷
    • 脸书
    • 推特
    • Mastodon
    • 帮助与支持
    • 论坛
    • 堆栈溢出
    • IRC
    • Slack
    • 付费支持
CakePHP

C CakePHP 5.1 Chiffon API

  • 项目
    • CakePHP
      • CakePHP
      • Chronos
      • Elastic Search
      • 队列
  • 版本
    • 5.1
      • 5.1
      • 5.0
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

命名空间

  • 全局
  • Cake
    • 缓存
    • 集合
    • 命令
    • 控制台
    • 控制器
    • 核心
    • 数据库
      • 驱动程序
      • 异常
      • 表达式
      • 日志
      • 查询
      • 重试
      • 模式
      • 语句
      • 类型
    • 数据源
    • 错误
    • 事件
    • 表单
    • Http
    • I18n
    • 日志
    • 邮件发送器
    • 网络
    • ORM
    • 路由
    • 测试套件
    • 工具
    • 验证
    • 视图

类 TableSchema

代表数据库模式中的单个表。

可以使用反射 API 或通过使用方法逐步构建实例来填充。

创建后,TableSchema 实例可以添加到 Schema\Collection 对象中。 它们也可以使用 createSql()、dropSql() 和 truncateSql() 方法转换为 SQL。

命名空间: Cake\Database\Schema

常量

  • 字符串
    ACTION_CASCADE ¶
    'cascade'

    外键级联操作

  • 字符串
    ACTION_NO_ACTION ¶
    'noAction'

    外键无操作

  • 字符串
    ACTION_RESTRICT ¶
    'restrict'

    外键限制操作

  • 字符串
    ACTION_SET_DEFAULT ¶
    'setDefault'

    外键限制默认值

  • 字符串
    ACTION_SET_NULL ¶
    'setNull'

    外键设为 null 操作

  • 字符串
    CONSTRAINT_FOREIGN ¶
    'foreign'

    外键约束类型

  • 字符串
    CONSTRAINT_PRIMARY ¶
    'primary'

    主键约束类型

  • 字符串
    CONSTRAINT_UNIQUE ¶
    'unique'

    唯一约束类型

  • 数组
    GEOSPATIAL_TYPES ¶
    [self::TYPE_GEOMETRY, self::TYPE_POINT, self::TYPE_LINESTRING, self::TYPE_POLYGON]

    地理空间列类型

  • 字符串
    INDEX_FULLTEXT ¶
    'fulltext'

    全文索引类型

  • 字符串
    INDEX_INDEX ¶
    'index'

    索引 - 索引类型

  • 整数
    LENGTH_LONG ¶
    4294967295

    使用 long 列类型时的列长度

  • 整数
    LENGTH_MEDIUM ¶
    16777215

    使用 medium 列类型时的列长度

  • 整数
    LENGTH_TINY ¶
    255

    使用 tiny 列类型时的列长度

  • 字符串
    TYPE_BIGINTEGER ¶
    'biginteger'

    大整数列类型

  • 字符串
    TYPE_BINARY ¶
    'binary'

    二进制列类型

  • 字符串
    TYPE_BINARY_UUID ¶
    'binaryuuid'

    二进制 UUID 列类型

  • 字符串
    TYPE_BOOLEAN ¶
    'boolean'

    布尔列类型

  • 字符串
    TYPE_CHAR ¶
    'char'

    字符列类型

  • 字符串
    TYPE_DATE ¶
    'date'

    日期列类型

  • 字符串
    TYPE_DATETIME ¶
    'datetime'

    日期时间列类型

  • 字符串
    TYPE_DATETIME_FRACTIONAL ¶
    'datetimefractional'

    带小数秒的日期时间列类型

  • 字符串
    TYPE_DECIMAL ¶
    'decimal'

    十进制列类型

  • 字符串
    TYPE_FLOAT ¶
    'float'

    浮点列类型

  • 字符串
    TYPE_GEOMETRY ¶
    'geometry'

    几何列类型

  • 字符串
    TYPE_INTEGER ¶
    'integer'

    整数列类型

  • 字符串
    TYPE_JSON ¶
    'json'

    JSON 列类型

  • 字符串
    TYPE_LINESTRING ¶
    'linestring'

    线字符串列类型

  • 字符串
    TYPE_POINT ¶
    'point'

    点列类型

  • 字符串
    TYPE_POLYGON ¶
    'polygon'

    多边形列类型

  • 字符串
    TYPE_SMALLINTEGER ¶
    'smallinteger'

    小整数列类型

  • 字符串
    TYPE_STRING ¶
    'string'

    字符串列类型

  • 字符串
    TYPE_TEXT ¶
    'text'

    文本列类型

  • 字符串
    TYPE_TIME ¶
    'time'

    時間列のタイプ

  • 字符串
    TYPE_TIMESTAMP ¶
    'timestamp'

    タイムスタンプ列のタイプ

  • 字符串
    TYPE_TIMESTAMP_FRACTIONAL ¶
    'timestampfractional'

    小数秒を含むタイムスタンプ列のタイプ

  • 字符串
    TYPE_TIMESTAMP_TIMEZONE ¶
    'timestamptimezone'

    タイムゾーンを含むタイムスタンプ列のタイプ

  • 字符串
    TYPE_TINYINTEGER ¶
    'tinyinteger'

    Tiny Integer 列のタイプ

  • 字符串
    TYPE_UUID ¶
    'uuid'

    UUID 列のタイプ

プロパティの概要

  • $_columnExtras protected static
    array<string, array<string, mixed>>

    追加のタイプ固有のプロパティ。

  • $_columnKeys protected static
    array<string, mixed>

    列定義で使用できる有効なキー。

  • $_columns protected
    array<string, array>

    テーブル内の列。

  • $_constraints protected
    array<string, array<string, mixed>>

    テーブル内の制約。

  • $_indexKeys protected static
    array<string, mixed>

    インデックス定義で使用できる有効なキー。

  • $_indexes protected
    array<string, array>

    テーブル内のインデックス。

  • $_options protected
    array<string, mixed>

    テーブルのオプション。

  • $_table protected
    字符串

    テーブルの名前。

  • $_temporary protected
    bool

    テーブルが一時的なものであるかどうか。

  • $_typeMap protected
    array<string, string>

    列とタイプを対応付けたマップ。

  • $_validConstraintTypes protected static
    list<string>

    有効な制約タイプの名前。

  • $_validForeignKeyActions protected static
    list<string>

    有効な外部キーアクションの名前。

  • $_validIndexTypes protected static
    list<string>

    有効なインデックスタイプの名前。

  • $columnLengths public static
    array<string, int>

    テキストタイプの列で使用できる有効な列の長さ。

メソッドの概要

  • __construct() public

    コンストラクター。

  • __debugInfo() public

    テーブルスキーマの配列を返します。

  • _checkForeignKey() protected

    外部キーをチェック/検証するためのヘルパーメソッド。

  • addColumn() public

    テーブルに列を追加します。

  • addConstraint() public

    制約を追加します。

  • addConstraintSql() public

    テーブルに制約を追加する SQL 文を生成します。

  • addIndex() public

    インデックスを追加します。

  • baseColumnType() public

    指定された列の基本タイプ名を返します。これは、より複雑なクラスが基づいているデータベースタイプを表します。

  • columns() public

    テーブル内の列名を返します。

  • constraints() public

    テーブル内のすべての制約の名前を返します。

  • createSql() public

    テーブルを作成するための SQL を生成します。

  • defaultValues() public

    列とそのデフォルト値のハッシュを返します。

  • dropConstraint() public

    制約を削除します。

  • dropConstraintSql() public

    テーブルから制約を削除する SQL 文を生成します。

  • dropSql() public

    テーブルを削除するための SQL を生成します。

  • getColumn() public

    テーブル内の列データを取得します。

  • getColumnType() public

    列のタイプを返します。列が存在しない場合は null を返します。

  • getConstraint() public

    名前を基に制約に関する情報を取得します。

  • getIndex() public

    名前を基にインデックスに関する情報を取得します。

  • getOptions() public

    テーブルのオプションを取得します。

  • getPrimaryKey() public

    主キーに使用される列を取得します。

  • hasAutoincrement() public

    テーブルに自動インクリメント列が定義されているかどうかをチェックします。

  • hasColumn() public

    スキーマに列が存在する場合は true を返します。

  • indexes() public

    テーブル内のすべてのインデックスの名前を返します。

  • isNullable() public

    フィールドが null 許容可能かどうかをチェックします。

  • isTemporary() public

    テーブルがデータベース内で一時的なものであるかどうかを取得します。

  • name() public

    テーブルの名前を取得します。

  • removeColumn() public

    テーブルスキーマから列を削除します。

  • setColumnType() public

    列のタイプを設定します。

  • setOptions() public

    テーブルのオプションを設定します。

  • setTemporary() public

    テーブルがデータベース内で一時的なものであるかどうかを設定します。

  • truncateSql() public

    テーブルをトランケートするための SQL 文を生成します。

  • typeMap() public

    キーがスキーマ内の列名で、値が対応するデータベースタイプである配列を返します。

メソッドの詳細

__construct() ¶ public

__construct(string $table, array<string, array|string> $columns = [])

コンストラクター。

パラメーター
string $table

テーブルの名前。

array<string, array|string> $columns optional

スキーマの列のリスト。

__debugInfo() ¶ public

__debugInfo(): array<string, mixed>

テーブルスキーマの配列を返します。

返り値
array<string, mixed>

_checkForeignKey() ¶ protected

_checkForeignKey(array<string, mixed> $attrs): array<string, mixed>

外部キーをチェック/検証するためのヘルパーメソッド。

パラメーター
array<string, mixed> $attrs

設定する属性。

返り値
array<string, mixed>
例外
Cake\Database\Exception\DatabaseException
外部キーの定義が不正な場合。

addColumn() ¶ public

addColumn(string $name, array<string, mixed>|string $attrs): $this

テーブルに列を追加します。

属性

列にはいくつかの属性を設定できます。

  • type 列のタイプ。CakePHP の抽象タイプを指定してください。
  • length 列の長さ。
  • precision 浮動小数点および10進数のタイプで格納する小数点以下の桁数。
  • default 列のデフォルト値。
  • null 列が null を保持できるかどうか。
  • fixed 列が固定長列かどうか。これは文字列列でのみ使用できます。
  • unsigned 列が符号なし列かどうか。これは整数、10進数、浮動小数点列でのみ使用できます。

上記のキーに加えて、以下のキーは一部のデータベース方言では実装されていますが、すべてではありません。

  • comment 列のコメント。
パラメーター
string $name
array<string, mixed>|string $attrs
返り値
$this

addConstraint() ¶ public

addConstraint(string $name, array<string, mixed>|string $attrs): $this

制約を追加します。

テーブルに制約を追加するために使用されます。例として、主キー、一意キー、外部キーなどがあります。

属性

  • type 追加する制約のタイプ。
  • columns インデックス内の列。
  • references 外部キーが参照するテーブルと列。
  • update 更新時の動作。オプションは 'restrict', 'setNull', 'cascade', 'noAction' です。
  • delete 削除時の動作。オプションは 'restrict', 'setNull', 'cascade', 'noAction' です。

'update' および 'delete' のデフォルトは 'cascade' です。

パラメーター
string $name
array<string, mixed>|string $attrs
返り値
$this

addConstraintSql() ¶ public

addConstraintSql(Cake\Database\Connection $connection): array

テーブルに制約を追加する SQL 文を生成します。

パラメーター
Cake\Database\Connection $connection
返り値
数组

addIndex() ¶ public

addIndex(string $name, array<string, mixed>|string $attrs): $this

インデックスを追加します。

インデックスとフルテキストインデックスを追加するために使用されます (サポートされているプラットフォームの場合)。

属性

  • type 追加するインデックスのタイプ。
  • columns インデックス内の列。
パラメーター
string $name
array<string, mixed>|string $attrs
返り値
$this

baseColumnType() ¶ public

baseColumnType(string $column): string|null

指定された列の基本タイプ名を返します。これは、より複雑なクラスが基づいているデータベースタイプを表します。

パラメーター
string $column
返り値
string|null

columns() ¶ public

columns(): list<string>

テーブル内の列名を返します。

返り値
list<string>

constraints() ¶ public

constraints(): list<string>

テーブル内のすべての制約の名前を返します。

返り値
list<string>

createSql() ¶ public

createSql(Cake\Database\Connection $connection): array

テーブルを作成するための SQL を生成します。

接続を使用してスキーマ方言にアクセスし、プラットフォーム固有の SQL を生成します。

パラメーター
Cake\Database\Connection $connection
返り値
数组

defaultValues() ¶ public

defaultValues(): array<string, mixed>

列とそのデフォルト値のハッシュを返します。

返り値
array<string, mixed>

dropConstraint() ¶ public

dropConstraint(string $name): $this

制約を削除します。

パラメーター
string $name
返り値
$this

dropConstraintSql() ¶ public

dropConstraintSql(Cake\Database\Connection $connection): array

テーブルから制約を削除する SQL 文を生成します。

パラメーター
Cake\Database\Connection $connection
返り値
数组

dropSql() ¶ public

dropSql(Cake\Database\Connection $connection): array

テーブルを削除するための SQL を生成します。

接続を使用してスキーマ方言にアクセスし、プラットフォーム固有の SQL を生成します。

パラメーター
Cake\Database\Connection $connection
返り値
数组

getColumn() ¶ public

getColumn(string $name): array<string, mixed>|null

テーブル内の列データを取得します。

パラメーター
string $name
返り値
array<string, mixed>|null

getColumnType() ¶ public

getColumnType(string $name): string|null

列のタイプを返します。列が存在しない場合は null を返します。

パラメーター
string $name
返り値
string|null

getConstraint() ¶ public

getConstraint(string $name): array<string, mixed>|null

名前を基に制約に関する情報を取得します。

パラメーター
string $name
返り値
array<string, mixed>|null

getIndex() ¶ public

getIndex(string $name): array<string, mixed>|null

名前を基にインデックスに関する情報を取得します。

パラメーター
string $name
返り値
array<string, mixed>|null

getOptions() ¶ public

getOptions(): array<string, mixed>

テーブルのオプションを取得します。

表选项允许您设置特定平台的表级选项。例如,MySQL 中的引擎类型。

返り値
array<string, mixed>

getPrimaryKey() ¶ public

getPrimaryKey(): list<string>

主キーに使用される列を取得します。

返り値
list<string>

hasAutoincrement() ¶ public

hasAutoincrement(): bool

テーブルに自動インクリメント列が定義されているかどうかをチェックします。

返り値
bool

hasColumn() ¶ public

hasColumn(string $name): bool

スキーマに列が存在する場合は true を返します。

パラメーター
string $name
返り値
bool

indexes() ¶ public

indexes(): list<string>

テーブル内のすべてのインデックスの名前を返します。

返り値
list<string>

isNullable() ¶ public

isNullable(string $name): bool

フィールドが null 許容可能かどうかをチェックします。

缺失的列是可为空的。

パラメーター
string $name
返り値
bool

isTemporary() ¶ public

isTemporary(): bool

テーブルがデータベース内で一時的なものであるかどうかを取得します。

返り値
bool

name() ¶ public

name(): string

テーブルの名前を取得します。

返り値
字符串

removeColumn() ¶ public

removeColumn(string $name): $this

テーブルスキーマから列を削除します。

如果列未在表中定义,则不会引发错误。

パラメーター
string $name
返り値
$this

setColumnType() ¶ public

setColumnType(string $name, string $type): $this

列のタイプを設定します。

パラメーター
string $name
string $type
返り値
$this

setOptions() ¶ public

setOptions(array<string, mixed> $options): $this

テーブルのオプションを設定します。

表选项允许您设置特定平台的表级选项。例如,MySQL 中的引擎类型。

パラメーター
array<string, mixed> $options
返り値
$this

setTemporary() ¶ public

setTemporary(bool $temporary): $this

テーブルがデータベース内で一時的なものであるかどうかを設定します。

パラメーター
bool $temporary
返り値
$this

truncateSql() ¶ public

truncateSql(Cake\Database\Connection $connection): array

テーブルをトランケートするための SQL 文を生成します。

パラメーター
Cake\Database\Connection $connection
返り値
数组

typeMap() ¶ public

typeMap(): array<string, string>

キーがスキーマ内の列名で、値が対応するデータベースタイプである配列を返します。

返り値
array<string, string>

属性详细说明

$_columnExtras ¶ protected static

追加のタイプ固有のプロパティ。

类型
array<string, array<string, mixed>>

$_columnKeys ¶ protected static

列定義で使用できる有効なキー。

类型
array<string, mixed>

$_columns ¶ protected

テーブル内の列。

类型
array<string, array>

$_constraints ¶ protected

テーブル内の制約。

类型
array<string, array<string, mixed>>

$_indexKeys ¶ protected static

インデックス定義で使用できる有効なキー。

类型
array<string, mixed>

$_indexes ¶ protected

テーブル内のインデックス。

类型
array<string, array>

$_options ¶ protected

テーブルのオプション。

类型
array<string, mixed>

$_table ¶ protected

テーブルの名前。

类型
字符串

$_temporary ¶ protected

テーブルが一時的なものであるかどうか。

类型
bool

$_typeMap ¶ protected

列とタイプを対応付けたマップ。

类型
array<string, string>

$_validConstraintTypes ¶ protected static

有効な制約タイプの名前。

类型
list<string>

$_validForeignKeyActions ¶ protected static

有効な外部キーアクションの名前。

类型
list<string>

$_validIndexTypes ¶ protected static

有効なインデックスタイプの名前。

类型
list<string>

$columnLengths ¶ public static

テキストタイプの列で使用できる有効な列の長さ。

类型
array<string, int>
OpenHub
Pingping
Linode
  • 商业解决方案
  • 展示
  • 文档
  • 书籍
  • API
  • 视频
  • 报告安全问题
  • 隐私政策
  • 标识和商标
  • 社区
  • 参与进来
  • 问题(Github)
  • Bakery
  • 精选资源
  • 培训
  • 聚会
  • 我的CakePHP
  • CakeFest
  • 时事通讯
  • 领英
  • 优酷
  • 脸书
  • 推特
  • Mastodon
  • 帮助与支持
  • 论坛
  • 堆栈溢出
  • IRC
  • Slack
  • 付费支持

使用 CakePHP API 文档 生成