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
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>|bool
SQL 更新完整路径名称列表。如果目录不存在,则为 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 更新查询的文本
属性
db
DatabaseDriver 对象
自 |
2.5 |
---|
类型
DatabaseDriver
folder
将找到 SQL 更新文件的文件夹
自 |
2.5 |
---|
类型
string