Executes a series of SQL statements on a database using Creole.
Statements can
either be read in from a text file using the src attribute or from
between the enclosing SQL tags.
Multiple statements can be provided, separated by semicolons (or the
defined delimiter). Individual lines within the statements can be
commented using either --, // or REM at the start of the line.
The autocommit attribute specifies whether auto-commit should be
turned on or off whilst executing the statements. If auto-commit is turned
on each statement will be executed and committed. If it is turned off the
statements will all be executed as one transaction.
The onerror attribute specifies how to proceed when an error occurs
during the execution of one of the statements.
The possible values are: continue execution, only show the error;
stop execution and commit transaction;
and abort execution and transaction and fail task.
Methods
Adds a set of files (nested fileset attribute).
addFileset(\FileSet $set)
Set an inline SQL command to execute.
addText($sql)
NB: Properties are not expanded in this text.
Parameters
$sql
Creates a filterchain
createFilterChain() : object
Returns
objectThe created filterchain object
Add a SQL transaction to execute
createTransaction()
Returns the textual description of the task
getDescription() : string
Inherited
| inherited_from |
\Task::getDescription() |
| inherited_from |
\CreoleTask::getDescription() |
Returns
stringThe text description of the task
Returns the location within the buildfile this task occurs.
getLocation() : \Location
Inherited
| inherited_from |
\Task::getLocation() |
| inherited_from |
\CreoleTask::getLocation() |
Returns
\LocationThe location object describing the position of this
task within the buildfile.
Returns the owning target of this task.
getOwningTarget() : \Target
Inherited
| inherited_from |
\Task::getOwningTarget() |
| inherited_from |
\CreoleTask::getOwningTarget() |
Returns
\TargetThe target object that owns this task
Gets the password.
getPassword() : \Returns
Inherited
| inherited_from |
\CreoleTask::getPassword() |
Returns
\Returnsa String
Returns a reference to current project
getProject() : \Project
Inherited
| inherited_from |
\ProjectComponent::getProject() |
| inherited_from |
\Task::getProject() |
| inherited_from |
\CreoleTask::getProject() |
Returns
\ProjectReference to current porject object
Returns the wrapper object for runtime configuration
getRuntimeConfigurableWrapper() : \RuntimeConfigurable
Inherited
| inherited_from |
\Task::getRuntimeConfigurableWrapper() |
| inherited_from |
\CreoleTask::getRuntimeConfigurableWrapper() |
Returns
Returns the name of task, used only for log messages
getTaskName() : string
Inherited
| inherited_from |
\Task::getTaskName() |
| inherited_from |
\CreoleTask::getTaskName() |
Returns
stringName of this task
Returns the name of the task under which it was invoked,
usually the XML tagname
getTaskType() : string
Inherited
| inherited_from |
\Task::getTaskType() |
| inherited_from |
\CreoleTask::getTaskType() |
Returns
stringThe type of this task (XML Tag)
Gets the url.
getUrl() : \Returns
Inherited
| inherited_from |
\CreoleTask::getUrl() |
Returns
\Returnsa String
Gets the userId.
getUserId() : \Returns
Inherited
| inherited_from |
\CreoleTask::getUserId() |
Returns
\Returnsa String
Initialize CreoleTask.
init()
Inherited
This method includes any necessary Creole libraries and triggers
appropriate error if they cannot be found. This is not done in header
because we may want this class to be loaded w/o triggering an error.
| inherited_from |
\CreoleTask::init() |
Exceptions
Gets the autocommit.
isAutocommit() : \Returns
Inherited
| inherited_from |
\CreoleTask::isAutocommit() |
Returns
\Returnsa boolean
isCaching()
isCaching($value)
Inherited
| inherited_from |
\CreoleTask::isCaching() |
Parameters
$value
Provides a project level log event to the task.
log(string $msg, integer $level)
Inherited
Parameters
$msg
stringThe message to log
$level
integerThe priority of the message
Load the sql file and then execute it
main()
This method may be
called more than once, if the task is invoked more than once. For
example, if target1 and target2 both depend on target3, then running
phing target1 target2 will run all tasks in target3 twice.
Should throw a BuildException if someting goes wrong with the build
This is abstract here. Must be overloaded by real tasks.
Exceptions
read in lines and execute them
runStatements(\Reader $reader, $out)
Parameters
$reader
$out
Exceptions
\SQLException, |
IOException |
whether output should be appended to or overwrite
an existing file.
setAppend($append)
Auto commit flag for database connection;
optional, default false.
setAutocommit(\autocommit $autocommit)
Inherited
| inherited_from |
\CreoleTask::setAutocommit() |
Parameters
$autocommit
\autocommitThe autocommit to set
Caching loaders / driver.
setCaching($enable)
Inherited
This is to avoid
getting an OutOfMemoryError when calling this task
multiple times in a row; default: true
| inherited_from |
\CreoleTask::setCaching() |
Parameters
$enable
Set the statement delimiter.
setDelimiter(\delimiter $delimiter)
For example, set this to "go" and delimitertype to "ROW" for
Sybase ASE or MS SQL Server.
Parameters
$delimiter
\delimiter
Set the Delimiter type for this sql task.
setDelimiterType(string $delimiterType)
The delimiter type takes two
values - normal and row. Normal means that any occurence of the delimiter
terminate the SQL command whereas with row, only a line containing just
the delimiter is recognized as the end of the command.
Parameters
$delimiterType
string
Sets a textual description of the task
setDescription(string $desc)
Inherited
| inherited_from |
\Task::setDescription() |
| inherited_from |
\CreoleTask::setDescription() |
Parameters
$desc
stringThe text describing the task
Set the Creole driver to be used.
setDriver(string $driver)
Inherited
| inherited_from |
\CreoleTask::setDriver() |
Parameters
$driver
stringdriver class name
Set the file encoding to use on the SQL files read in
setEncoding(\encoding $encoding)
Parameters
$encoding
\encodingthe encoding to use on the files
Sets the location within the buildfile this task occurs.
setLocation(\Location $location)
Inherited
Called by
the parser to set location information.
| inherited_from |
\Task::setLocation() |
| inherited_from |
\CreoleTask::setLocation() |
Parameters
$location
\LocationThe location object describing the position of this
task within the buildfile.
Action to perform when statement fails: continue, stop, or abort
optional; default "abort"
setOnerror($action)
Set the output file;
optional, defaults to the console.
setOutput(\PhingFile $output)
Sets the owning target this task belongs to.
setOwningTarget(\Target $target)
Inherited
| inherited_from |
\Task::setOwningTarget() |
| inherited_from |
\CreoleTask::setOwningTarget() |
Parameters
$target
\TargetReference to owning target
Sets the password; required.
setPassword(\password $password)
Inherited
| inherited_from |
\CreoleTask::setPassword() |
Parameters
$password
\passwordThe password to set
Set the print flag.
setPrint(boolean $print)
Parameters
$print
boolean
References the project to the current component.
setProject(\Project $project)
Inherited
| inherited_from |
\ProjectComponent::setProject() |
| inherited_from |
\Task::setProject() |
| inherited_from |
\CreoleTask::setProject() |
Parameters
$project
\ProjectThe reference to the current project
Sets the wrapper object this task should use for runtime
configurable elements.
setRuntimeConfigurableWrapper(\RuntimeConfigurable $wrapper)
Inherited
| inherited_from |
\Task::setRuntimeConfigurableWrapper() |
| inherited_from |
\CreoleTask::setRuntimeConfigurableWrapper() |
Parameters
Set the name of the SQL file to be run.
setSrc(\PhingFile $srcFile)
Required unless statements are enclosed in the build file
Parameters
$srcFile
Sets the name of this task for log messages
setTaskName(string $name) : string
Inherited
| inherited_from |
\Task::setTaskName() |
| inherited_from |
\CreoleTask::setTaskName() |
Parameters
$name
string
Returns
stringA string representing the name of this task for log
Sets the type of the task.
setTaskType(string $name)
Inherited
Usually this is the name of the XML tag
| inherited_from |
\Task::setTaskType() |
| inherited_from |
\CreoleTask::setTaskType() |
Parameters
$name
stringThe type of this task (XML Tag)
Sets the database connection URL; required.
setUrl(\url $url)
Inherited
| inherited_from |
\CreoleTask::setUrl() |
Parameters
Set the user name for the connection; required.
setUserid(\userId $userId)
Inherited
| inherited_from |
\CreoleTask::setUserid() |
Parameters
$userId
\userIdThe userId to set
Sets the version string, execute task only if
rdbms version match; optional.
setVersion(\version $version)
Inherited
| inherited_from |
\CreoleTask::setVersion() |
Parameters
$version
\versionThe version to set
Exec the sql statement.
execSQL($sql, $out)
Parameters
$sql
$out
Exceptions
Creates a new Connection as using the driver, url, userid and password specified.
getConnection() : \Connection
Inherited
The calling method is responsible for closing the connection.
| inherited_from |
\CreoleTask::getConnection() |
Exceptions
\BuildException |
if the UserId/Password/Url is not set or there is no suitable driver or the driver fails to load. |
Returns
\Connectionthe newly created connection.
getLoaderMap()
getLoaderMap()
Inherited
| inherited_from |
\CreoleTask::getLoaderMap() |
Returns a name
getRegisterSlot(string $slotName)
Inherited
| inherited_from |
\Task::getRegisterSlot() |
| inherited_from |
\CreoleTask::getRegisterSlot() |
Parameters
$slotName
string
print any results in the statement.
printResults($out)
Parameters
$out
Exceptions
Properties
$description : string
Inherited
| inherited_from |
\Task::$$description |
| inherited_from |
\CreoleTask::$$description |
$location : \Location
Inherited
| inherited_from |
\Task::$$location |
| inherited_from |
\CreoleTask::$$location |
$project : \Project
Inherited
| inherited_from |
\ProjectComponent::$$project |
| inherited_from |
\Task::$$project |
| inherited_from |
\CreoleTask::$$project |
$target : \Target
Inherited
| inherited_from |
\Task::$$target |
| inherited_from |
\CreoleTask::$$target |
$taskName : string
Inherited
| inherited_from |
\Task::$$taskName |
| inherited_from |
\CreoleTask::$$taskName |
$taskType : string
Inherited
| inherited_from |
\Task::$$taskType |
| inherited_from |
\CreoleTask::$$taskType |
$wrapper : \RuntimeConfigurable
Inherited
| inherited_from |
\Task::$$wrapper |
| inherited_from |
\CreoleTask::$$wrapper |
$autocommit
Inherited
| inherited_from |
\CreoleTask::$$autocommit |
$caching
Inherited
| inherited_from |
\CreoleTask::$$caching |
$driver
Inherited
| param |
|
| inherited_from |
\CreoleTask::$$driver |
$loaderMap
Inherited
This is to avoid
getting an OutOfMemoryError when calling this task
multiple times in a row.
NOT IMPLEMENTED YET
| inherited_from |
\CreoleTask::$$loaderMap |
$password
Inherited
| inherited_from |
\CreoleTask::$$password |
$rdbms
Inherited
| inherited_from |
\CreoleTask::$$rdbms |
$url
Inherited
| inherited_from |
\CreoleTask::$$url |
$userId
Inherited
| inherited_from |
\CreoleTask::$$userId |
Constants
DELIM_NORMAL
DELIM_NORMAL