# classes/phing/tasks/ext/creole/CreoleSQLExecTask.php

## \CreoleSQLExecTask
jump to top

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.

Extends from
  \CreoleTask
author
  Hans Lellelid (Phing)
author
  Jeff Martin (Ant)
author
  Michael McCallum (Ant)
author
  Tim Stephenson (Ant)
copyright
  2001,2002 THYRELL. All rights reserved
package
  phing.tasks.ext.creole
version
  $Revision: 1084 $

### Constants

`DELIM_ROW = 'row'`

`DELIM_NORMAL = 'normal'`

### Properties

`$append= 'false'`

Append to an existing file or overwrite it?

Default value `false` Details

Type

`$conn= 'null'`

Database connection

Default value `null` Details

Type

`$delimiter= ';'`

SQL Statement delimiter

Default value`;`Details

Type

`$delimiterType= 'normal'`

The delimiter type indicating whether the delimiter will only be recognized on a line by itself

Default value `normal` Details

Type

`$encoding= 'null'`

Encoding to use when reading SQL statements from a file

Default value `null` Details

Type

`$filesets= 'array'`

files to load

Default value `array` Details

Type

`$filterChains= 'array'`

all filterchains objects assigned to this task

Default value `array` Details

Type

`$goodSql= '0'`
Default value `0` Details

Type

`$onError= 'abort'`

Action to perform if an error is found

Default value `abort` Details

Type

`$output= 'null'`

Results Output file.

Default value `null` Details

Type

`$print= 'false'`

Print SQL results.

Default value `false` Details

Type

`$showheaders= 'true'`

Print header columns.

Default value `true` Details

Type

`$sqlCommand= ''`

SQL input command

Details

Type

`$srcFile= 'null'`

SQL input file

Default value `null` Details

Type

`$statement= 'null'`

SQL statement

Default value `null` Details

Type

`$totalSql= '0'`
Default value `0` Details

Type

`$transactions= 'array'`

SQL transactions to perform

Default value `array` Details

Type

### Methods

`addFileset( $set ) :`
Adds a set of files (nested fileset attribute).
Parameters

Name | Type | Description
--- | --- | ---
$set |  |

`addText( $sql ) :`
Set an inline SQL command to execute.

NB: Properties are not expanded in this text.

Parameters

Name | Type | Description
--- | --- | ---
$sql |  |

`createFilterChain( ) : object`
Creates a filterchain
Returns

Type | Description
--- | ---
object |

Details

access
  public

`createTransaction( ) :`
Add a SQL transaction to execute
`execSQL( $sql, $out = null ) :`
Exec the sql statement.
Parameters

Name | Type | Description
--- | --- | ---
$sql |  |
$out |  |

Details

throws

`main( ) :`
Load the sql file and then execute it
Details

throws

`printResults( $out = null ) :`
print any results in the statement.
Parameters

Name | Type | Description
--- | --- | ---
$out |  |

Details

throws

`runStatements( $reader, $out = null ) :`
read in lines and execute them
Parameters

Name | Type | Description
--- | --- | ---
$reader |  |
$out |  |

Details

throws
  IOException

`setAppend( $append ) :`
whether output should be appended to or overwrite an existing file. Defaults to false.
Parameters

Name | Type | Description
--- | --- | ---
$append |  |

`setDelimiter( $delimiter ) :`
Set the statement delimiter.

For example, set this to "go" and delimitertype to "ROW" for Sybase ASE or MS SQL Server.

Parameters

Name | Type | Description
--- | --- | ---
$delimiter |  | delimiter

`setDelimiterType( string $delimiterType ) :`
Set the Delimiter type for this sql task. 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

Name | Type | Description
--- | --- | ---
$delimiterType | string |

`setEncoding( \encoding $encoding ) :`
Set the file encoding to use on the SQL files read in
Parameters

Name | Type | Description
--- | --- | ---
$encoding | \encoding | the encoding to use on the files

`setOnerror( $action ) :`
Action to perform when statement fails: continue, stop, or abort optional; default "abort"
Parameters

Name | Type | Description
--- | --- | ---
$action |  |

`setOutput( \PhingFile $output ) :`
Set the output file; optional, defaults to the console.
Parameters

Name | Type | Description
--- | --- | ---
$output | \PhingFile |

`setPrint( boolean $print ) :`
Set the print flag.
Parameters

Name | Type | Description
--- | --- | ---
$print | boolean |

`setShowheaders( boolean $showheaders ) :`
Print headers for result sets from the statements; optional, default true.
Parameters

Name | Type | Description
--- | --- | ---
$showheaders | boolean |

`setSrc( $srcFile ) :`
Set the name of the SQL file to be run.

Required unless statements are enclosed in the build file

Parameters

Name | Type | Description
--- | --- | ---
$srcFile |  |

## \SQLExecTransaction
jump to top

"Inner" class that contains the definition of a new transaction element.

Transactions allow several files or blocks of statements to be executed using the same JDBC connection and commit operation in between.

package
  phing.tasks.ext.creole

### Properties

`$parent= ''`
Details

Type

`$tSqlCommand= ''`
Details

Type

`$tSrcFile= 'null'`
Default value `null` Details

Type

### Methods

`__construct( $parent ) :`
Parameters

Name | Type | Description
--- | --- | ---
$parent |  |

`addText( $sql ) :`
Parameters

Name | Type | Description
--- | --- | ---
$sql |  |

`runTransaction( $out = null ) :`
Parameters

Name | Type | Description
--- | --- | ---
$out |  |

Details

throws
  SQLException

`setSrc( $src ) :`
Parameters

Name | Type | Description
--- | --- | ---
$src |  |

Documentation was generated by DocBlox 0.13.1.