ChangeSet

包含针对 Joomla 特定实例的一组 JSchemaChange 对象。

这些对象中的每一个都包含一个 DDL 查询,该查询应该在创建或更新此数据库时针对数据库运行。这使安装管理器能够检查当前数据库架构是否是最新的。

2.5

Joomla CMS

方法

__construct

构造函数:通过处理文件夹中的 .sql 文件来构建 $changeItems 数组。

__construct(\Joomla\Database\DatabaseDriver db,  folder = null) : 

Joomla 核心更新的文件夹为 administrator/components/com_admin/sql/updates/<database>

2.5

参数

db

DatabaseDriver当前数据库对象

folder

string包含更新查询的文件夹的完整路径

响应

混合

check

检查数据库并返回找到的任何错误的数组。

check() : mixed||string|int

请注意,这些不是数据库错误,而是当前架构未更新的情况。

2.5

响应

array<string|int, mixed>如果存在,则为错误数组。

fix

运行更新查询以将更改应用于数据库

fix() : 

2.5

响应

getInstance

返回对 ChangeSet 对象的引用,仅在它不存在时才创建它。

getInstance(\Joomla\Database\DatabaseDriver db,  folder = null) : \Joomla\CMS\Schema\ChangeSet
静态

2.5

参数

db

DatabaseDriver当前数据库对象

folder

string包含更新查询的文件夹的完整路径

响应

ChangeSet

getSchema

获取当前数据库架构,基于最高版本号。

getSchema() : 

请注意,.sql 文件的命名基于版本和日期,因此最后一个文件的文件名应与 #__schemas 表中的数据库架构版本匹配。

2.5

响应

string数据库的架构版本

getStatus

返回此集的结果数组

getStatus() : mixed||string|int

2.5

响应

array<string|int, mixed>按未检查、确定、错误和跳过分组的 changeitems 的关联数组

getUpdateFiles

获取此数据库的 SQL 更新文件列表

getUpdateFiles() : array|bool

2.5

响应

array<string|int, mixed>|boolSQL 更新完整路径名称列表。如果目录不存在,则为 False

getUpdateQueries

获取 SQL 查询数组

getUpdateQueries(mixed||string|int sqlfiles) : mixed||string|int

2.5

参数

sqlfiles

array<string|int, mixed>.sql 更新文件名的数组。

响应

array<string|int, mixed>\stdClass 对象数组,其中:file=文件名,update_query = SQL 更新查询的文本

属性

changeItems

ChangeItem 对象数组

2.5

类型

array<string|int, ChangeItem>

db

DatabaseDriver 对象

2.5

类型

DatabaseDriver

folder

将找到 SQL 更新文件的文件夹

2.5

类型

string

instance

此对象的单例实例

静态

3.5.1

类型

ChangeSet