public static
mixed
|
#
getConnection( )
Gets the current connection singleton, or creates a new one if none exists.
Gets the current connection singleton, or creates a new one if none exists.
Returns
mixed
Since
1.1
|
public static
|
#
disconnect( )
Disconnects the current database connection if one exists (self::$connection is set).
Disconnects the current database connection if one exists (self::$connection is set).
Since
1.1
|
public static
string
|
#
getLastDatabaseError( )
Returns the last database error string for the current connection.
Returns the last database error string for the current connection.
Returns
string
Since
1.1
|
public
|
#
load( integer $ID, integer $version = 0 )
Populates the record object with the properties retrived from the database for the record $ID.
Populates the record object with the properties retrived from the database for the record $ID.
Parameters
- $ID
- The object ID of the record to load.
- $version
- Optionaly, provide the version to load that version from the [tablename]_history table.
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
array
|
#
loadAllOldVersions( integer $ID )
Load all old versions (if any) of this record from the [tablename]_history table.
Load all old versions (if any) of this record from the [tablename]_history table.
Parameters
- $ID
- The object ID of the record to load.
Returns
array An array containing objects of this type of record object, order by version.
Throws
Alpha\Exception\RecordFoundException
Since
2.0
|
public
|
#
loadByAttribute( string $attribute, string $value, boolean $ignoreClassType = false, array $loadAttributes = array() )
Populates the record object from the database table by the given attribute value.
Populates the record object from the database table by the given attribute value.
Parameters
- $attribute
- The name of the attribute to load the record by.
- $value
- The value of the attribute to load the record by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type
- $loadAttributes
- The attributes to load from the database to this object (leave blank to load all attributes)
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
array
|
#
loadAll( integer $start = 0, integer $limit = 0, string $orderBy = 'ID', string $order = 'ASC', boolean $ignoreClassType = false )
Loads all of the record objects of this class into an array which is returned.
Loads all of the record objects of this class into an array which is returned.
Parameters
- $start
- The start of the SQL LIMIT clause, useful for pagination.
- $limit
- The amount (limit) of records to load, useful for pagination.
- $orderBy
- The name of the field to sort the records by.
- $order
- The order to sort the records by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type
Returns
array An array containing objects of this type of record object.
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
array
|
#
loadAllByAttribute( string $attribute, string $value, integer $start = 0, integer $limit = 0, string $orderBy = 'ID', string $order = 'ASC', boolean $ignoreClassType = false, string[] $constructorArgs = array() )
Loads all of the objects of this class by the specified attribute into an array which is returned.
Loads all of the objects of this class by the specified attribute into an array which is returned.
Parameters
- $attribute
- The attribute to load the objects by.
- $value
- The value of the attribute to load the objects by.
- $start
- The start of the SQL LIMIT clause, useful for pagination.
- $limit
- The amount (limit) of objects to load, useful for pagination.
- $orderBy
- The name of the field to sort the objects by.
- $order
- The order to sort the objects by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type.
- $constructorArgs
- An optional array of contructor arguements to pass to the records that will be generated and returned. Supports a maximum of 5 arguements.
Returns
array An array containing objects of this type of business object.
Throws
Since
1.1
|
public
array
|
#
loadAllByAttributes( array $attributes = array(), array $values = array(), integer $start = 0, integer $limit = 0, string $orderBy = 'ID', string $order = 'ASC', boolean $ignoreClassType = false, string[] $constructorArgs = array() )
Loads all of the record objects of this class by the specified attributes into an array which is returned.
Loads all of the record objects of this class by the specified attributes into an array which is returned.
Parameters
- $attributes
- The attributes to load the records by.
- $values
- The values of the attributes to load the records by.
- $start
- The start of the SQL LIMIT clause, useful for pagination.
- $limit
- The amount (limit) of records to load, useful for pagination.
- $orderBy
- The name of the field to sort the records by.
- $order
- The order to sort the records by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type
- $constructorArgs
- An optional array of contructor arguements to pass to the records that will be generated and returned. Supports a maximum of 5 arguements.
Returns
array An array containing objects of this type of record object.
Throws
Since
1.1
|
public
array
|
#
loadAllByDayUpdated( string $date, integer $start = 0, integer $limit = 0, string $orderBy = 'ID', string $order = 'ASC', boolean $ignoreClassType = false )
Loads all of the record objects of this class that where updated (updated_ts value) on the date indicated.
Loads all of the record objects of this class that where updated (updated_ts value) on the date indicated.
Parameters
- $date
- The date for which to load the records updated on, in the format 'YYYY-MM-DD'.
- $start
- The start of the SQL LIMIT clause, useful for pagination.
- $limit
- The amount (limit) of records to load, useful for pagination.
- $orderBy
- The name of the field to sort the records by.
- $order
- The order to sort the records by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type
Returns
array An array containing objects of this type of record object.
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
array
|
#
loadAllFieldValuesByAttribute( string $attribute, string $value, string $returnAttribute, string $order = 'ASC', boolean $ignoreClassType = false )
Loads all of the specified attribute values of this class by the specified attribute into an
array which is returned.
Loads all of the specified attribute values of this class by the specified attribute into an
array which is returned.
Parameters
- $attribute
- The attribute name to load the field values by.
- $value
- The value of the attribute to load the field values by.
- $returnAttribute
- The name of the attribute to return.
- $order
- The order to sort the records by.
- $ignoreClassType
- Default is false, set to true if you want to load from overloaded tables and ignore the class type.
Returns
array An array of field values.
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
|
#
save( )
Saves the record. If $this->ID is empty or null it will INSERT, otherwise UPDATE.
Saves the record. If $this->ID is empty or null it will INSERT, otherwise UPDATE.
Throws
Since
1.1
|
public
|
#
saveAttribute( string $attribute, mixed $value )
Saves the field specified with the value supplied. Only works for persistent records. Note that no Alpha type
validation is performed with this method!
Saves the field specified with the value supplied. Only works for persistent records. Note that no Alpha type
validation is performed with this method!
Parameters
- $attribute
- The name of the attribute to save.
- $value
- The value of the attribute to save.
Throws
Since
1.1
|
public
|
#
saveHistory( )
Saves the object history to the [tablename]_history table. It always does an INSERT.
Saves the object history to the [tablename]_history table. It always does an INSERT.
Throws
Since
1.2
|
public
|
#
delete( )
Deletes the current object from the database.
Deletes the current object from the database.
Throws
Since
1.1
|
public
integer
|
#
getVersion( )
Gets the version_num of the object from the database (returns 0 if the Record is not saved yet).
Gets the version_num of the object from the database (returns 0 if the Record is not saved yet).
Returns
integer
Throws
Alpha\Exception\RecordFoundException
Since
1.1
|
public
|
#
makeTable( boolean $checkIndexes = true )
Builds a new database table for the Record class.
Builds a new database table for the Record class.
Parameters
- $checkIndexes
- Set to false if you do not want to check for any additional required indexes while creating the table (default is true).
Throws
Since
1.1
|
public
|
#
makeHistoryTable( )
Builds a new database table for the Record class to store it's history.
Builds a new database table for the Record class to store it's history.
Throws
AlphaException
Since
1.2
|
public
|
#
rebuildTable( )
Re-builds the table if the model requirements have changed. All data is lost!
Re-builds the table if the model requirements have changed. All data is lost!
Throws
Since
1.1
|
public
|
#
dropTable( string $tableName = null )
Drops the table if the model requirements have changed. All data is lost!
Drops the table if the model requirements have changed. All data is lost!
Parameters
- $tableName
- Optional table name, leave blank for the defined table for this class to be dropped
Throws
Since
1.1
|
public
|
#
addProperty( string $propName )
Adds in a new class property without loosing existing data (does an ALTER TABLE query on the
database).
Adds in a new class property without loosing existing data (does an ALTER TABLE query on the
database).
Parameters
- $propName
- The name of the new field to add to the database table.
Throws
Since
1.1
|
public
integer
|
#
getMAX( )
Gets the maximum ID value from the database for this class type.
Gets the maximum ID value from the database for this class type.
Returns
integer The maximum ID value in the class table.
Throws
Since
1.1
|
public
integer
|
#
getCount( array $attributes = array(), array $values = array() )
Gets the count from the database for the amount of objects of this class.
Gets the count from the database for the amount of objects of this class.
Parameters
- $attributes
- The attributes to count the objects by (optional).
- $values
- The values of the attributes to count the objects by (optional).
Returns
integer
Throws
Since
1.1
|
public
integer
|
#
getHistoryCount( )
Gets the count from the database for the amount of entries in the [tableName]_history table for this business object. Only call
this method on classes where maintainHistory = true, otherwise an exception will be thrown.
Gets the count from the database for the amount of entries in the [tableName]_history table for this business object. Only call
this method on classes where maintainHistory = true, otherwise an exception will be thrown.
Returns
integer
Throws
Since
1.2
|
public
|
#
setEnumOptions( )
Populate all of the enum options for this object from the database.
Populate all of the enum options for this object from the database.
Throws
Since
1.1
|
public
boolean
|
#
checkTableExists( boolean $checkHistoryTable = false )
Checks to see if the table exists in the database for the current business class.
Checks to see if the table exists in the database for the current business class.
Parameters
- $checkHistoryTable
- Set to true if you want to check for the existance of the _history table for this DAO.
Returns
boolean
Throws
Since
1.1
|
public static
boolean
|
#
checkRecordTableExists( string $RecordClassName, boolean $checkHistoryTable = false )
Static method to check the database and see if the table for the indicated Record class name
exists (assumes table name will be $RecordClassName less "Object").
Static method to check the database and see if the table for the indicated Record class name
exists (assumes table name will be $RecordClassName less "Object").
Parameters
- $RecordClassName
- The name of the business object class we are checking.
- $checkHistoryTable
- Set to true if you want to check for the existance of the _history table for this DAO.
Returns
boolean
Throws
Since
1.1
|
public
boolean
|
#
checkTableNeedsUpdate( )
Checks to see if the table in the database matches (for fields) the business class definition, i.e. if the
database table is in sync with the class definition.
Checks to see if the table in the database matches (for fields) the business class definition, i.e. if the
database table is in sync with the class definition.
Returns
boolean
Throws
Since
1.1
|
public
array
|
#
findMissingFields( )
Returns an array containing any properties on the class which have not been created on the database
table yet.
Returns an array containing any properties on the class which have not been created on the database
table yet.
Returns
array An array of missing fields in the database table.
Throws
Since
1.1
|
public
array
|
#
getIndexes( )
Gets an array of all of the names of the active database indexes for this class.
Gets an array of all of the names of the active database indexes for this class.
Returns
array An array of database indexes on this table.
Throws
Since
1.1
|
public
|
#
createForeignIndex( string $attributeName, string $relatedClass, string $relatedClassAttribute, string $indexName = null )
Creates a foreign key constraint (index) in the database on the given attribute.
Creates a foreign key constraint (index) in the database on the given attribute.
Parameters
- $attributeName
- The name of the attribute to apply the index on.
- $relatedClass
- The fully-qualified name of the related class.
- $relatedClassAttribute
- The name of the field to relate to on the related class.
- $indexName
- The optional name for the index, will calculate if not provided.
Throws
Since
1.1
|
public
|
#
createUniqueIndex( string $attribute1Name, string $attribute2Name = '', string $attribute3Name = '' )
Creates a unique index in the database on the given attribute(s).
Creates a unique index in the database on the given attribute(s).
Parameters
- $attribute1Name
- The first attribute to mark unique in the database.
- $attribute2Name
- The second attribute to mark unique in the databse (optional, use only for composite keys).
- $attribute3Name
- The third attribute to mark unique in the databse (optional, use only for composite keys).
Throws
Since
1.1
|
public
|
#
reload( )
Reloads the object from the database, overwritting any attribute values in memory.
Reloads the object from the database, overwritting any attribute values in memory.
Throws
Since
1.1
|
public
boolean
|
#
checkRecordExists( integer $ID )
Checks that a record exists for the Record in the database.
Checks that a record exists for the Record in the database.
Parameters
- $ID
- The Object ID of the object we want to see whether it exists or not.
Returns
boolean
Throws
Since
1.1
|
public
boolean
|
#
isTableOverloaded( )
Checks to see if the table name matches the classname, and if not if the table
name matches the classname name of another record, i.e. the table is used to store
multiple types of records.
Checks to see if the table name matches the classname, and if not if the table
name matches the classname name of another record, i.e. the table is used to store
multiple types of records.
Returns
boolean
Throws
Since
1.1
|
public static
|
#
begin( )
Starts a new database transaction.
Starts a new database transaction.
Throws
Since
1.1
|
public static
|
#
commit( )
Commits the current database transaction.
Commits the current database transaction.
Throws
Since
1.1
|
public static
|
#
rollback( )
Aborts the current database transaction.
Aborts the current database transaction.
Throws
Since
1.1
|
public
|
#
setRecord( Alpha\Model\ActiveRecord $Record )
Provide the Record that we are going to map the data to from this provider.
Provide the Record that we are going to map the data to from this provider.
Parameters
Since
1.1
|
public
array
|
#
query( string $sqlQuery )
Returns a 2d array, where each element in the array is another array
representing a database row.
Returns a 2d array, where each element in the array is another array
representing a database row.
Parameters
Returns
array
Throws
Since
1.1
|
public static
boolean
|
#
checkDatabaseExists( )
Check to see if the configured database exists.
Check to see if the configured database exists.
Returns
boolean
Since
2.0
|
public static
|
#
createDatabase( )
Creates the configured database.
Creates the configured database.
Throws
Since
2.0
|
public static
|
#
dropDatabase( )
Drops the configured database.
Drops the configured database.
Throws
Since
2.0
|