mini\Table\Contracts\MutableTableInterface
abstract
interface
Documentation
Interface for tables that support INSERT, UPDATE, and DELETE operations
UPDATE and DELETE take a query parameter that specifies which rows to affect. The query must be derived from the same underlying table:
$table->delete($table->eq('status', 'inactive'));
$table->update($table->gt('age', 65), ['retired' => true]);
Implementations MUST validate that the query is compatible (e.g., same underlying storage) and throw InvalidArgumentException if not.
Inheritance
Implements:
mini\Table\Contracts\TableInterface
Traversable
Countable
IteratorAggregate
mini\Table\Contracts\SetInterface
Methods (31)
Insert a new row
Update rows matching the query
Delete rows matching the query
public
abstract
getColumns()
inherited from Table\Contracts\TableInterface
Get column definitions for this table (SetInterface method)
public
abstract
getAllColumns()
inherited from Table\Contracts\TableInterface
Get all column definitions regardless of projection
public
abstract
eq()
inherited from Table\Contracts\TableInterface
Filter rows where column equals value (NULL uses IS NULL semantics)
public
abstract
lt()
inherited from Table\Contracts\TableInterface
Filter rows where column is less than value
public
abstract
lte()
inherited from Table\Contracts\TableInterface
Filter rows where column is less than or equal to value
public
abstract
gt()
inherited from Table\Contracts\TableInterface
Filter rows where column is greater than value
public
abstract
gte()
inherited from Table\Contracts\TableInterface
Filter rows where column is greater than or equal to value
public
abstract
in()
inherited from Table\Contracts\TableInterface
Filter rows where column value is in the given set
public
abstract
like()
inherited from Table\Contracts\TableInterface
Filter rows where column matches a LIKE pattern
public
abstract
union()
inherited from Table\Contracts\TableInterface
Return rows that are in this table OR the other table (set union)
public
abstract
or()
inherited from Table\Contracts\TableInterface
Filter rows matching any of the given predicates (OR semantics)
public
abstract
except()
inherited from Table\Contracts\TableInterface
Return rows that are in this table but NOT in the other set (set difference)
public
abstract
columns()
inherited from Table\Contracts\TableInterface
Project to specific columns
public
abstract
has()
inherited from Table\Contracts\TableInterface
Check if value(s) exist in the table's projected columns (SetInterface method)
public
abstract
order()
inherited from Table\Contracts\TableInterface
Set ordering (overwrites previous)
public
abstract
limit()
inherited from Table\Contracts\TableInterface
Set maximum number of rows to return (overwrites previous)
public
abstract
offset()
inherited from Table\Contracts\TableInterface
Set number of rows to skip (overwrites previous)
public
abstract
getLimit()
inherited from Table\Contracts\TableInterface
Get current limit (null if unlimited)
public
abstract
getOffset()
inherited from Table\Contracts\TableInterface
Get current offset (0 if not set)
public
abstract
exists()
inherited from Table\Contracts\TableInterface
Check if the table has any rows
public
abstract
load()
inherited from Table\Contracts\TableInterface
Load a single row by its row ID
public
abstract
distinct()
inherited from Table\Contracts\TableInterface
Return table with duplicate rows removed
public
abstract
withAlias()
inherited from Table\Contracts\TableInterface
Return table with aliased column names
public
abstract
getProperty()
inherited from Table\Contracts\TableInterface
Get a table property
public
abstract
hasProperty()
inherited from Table\Contracts\TableInterface
Check if a property exists (including null values)
public
abstract
withProperty()
inherited from Table\Contracts\TableInterface
Return table with property set
public
abstract
getIterator()
inherited from IteratorAggregate
Documentation missing
public
abstract
count()
inherited from Countable
Documentation missing