|
|||||
FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Represents an extent of objects
Field Summary | |
---|---|
OutParameter |
ARRAY
|
OutParameter |
BIGINT
|
OutParameter |
BINARY
|
OutParameter |
BIT
|
OutParameter |
BLOB
|
OutParameter |
BOOLEAN
|
OutParameter |
CHAR
|
OutParameter |
CLOB
|
OutParameter |
DATALINK
|
OutParameter |
DATE
|
OutParameter |
DECIMAL
|
OutParameter |
DISTINCT
|
OutParameter |
DOUBLE
|
OutParameter |
FLOAT
|
OutParameter |
INTEGER
|
OutParameter |
JAVA_OBJECT
|
OutParameter |
LONGVARBINARY
|
OutParameter |
LONGVARCHAR
|
OutParameter |
NULL
|
OutParameter |
NUMERIC
|
OutParameter |
OTHER
|
OutParameter |
REAL
|
OutParameter |
REF
|
OutParameter |
SMALLINT
|
OutParameter |
STRUCT
|
OutParameter |
TIME
|
OutParameter |
TIMESTAMP
|
OutParameter |
TINYINT
|
OutParameter |
VARBINARY
|
OutParameter |
VARCHAR
|
Closure |
configureStatement
|
DataSource |
dataSource
|
Logger |
log
|
int |
resultSetConcurrency
|
int |
resultSetHoldability
|
int |
resultSetType
|
int |
updateCount
|
Connection |
useConnection
|
boolean |
warned
|
Constructor Summary | |
Sql(DataSource dataSource)
Constructs an SQL instance using the given DataSource. |
|
Sql(Connection connection)
|
|
Sql(Sql parent)
|
Method Summary | |
---|---|
static InParameter |
ARRAY(Object value)
|
static InParameter |
BIGINT(Object value)
|
static InParameter |
BINARY(Object value)
|
static InParameter |
BIT(Object value)
|
static InParameter |
BLOB(Object value)
|
static InParameter |
BOOLEAN(Object value)
|
static InParameter |
CHAR(Object value)
|
static InParameter |
CLOB(Object value)
|
static InParameter |
DATALINK(Object value)
|
static InParameter |
DATE(Object value)
|
static InParameter |
DECIMAL(Object value)
|
static InParameter |
DISTINCT(Object value)
|
static InParameter |
DOUBLE(Object value)
|
static InParameter |
FLOAT(Object value)
|
static InParameter |
INTEGER(Object value)
|
static InParameter |
JAVA_OBJECT(Object value)
|
static InParameter |
LONGVARBINARY(Object value)
|
static InParameter |
LONGVARCHAR(Object value)
|
static InParameter |
NULL(Object value)
|
static InParameter |
NUMERIC(Object value)
|
static InParameter |
OTHER(Object value)
|
static InParameter |
REAL(Object value)
|
static InParameter |
REF(Object value)
|
static InParameter |
SMALLINT(Object value)
|
static InParameter |
STRUCT(Object value)
|
static InParameter |
TIME(Object value)
|
static InParameter |
TIMESTAMP(Object value)
|
static InParameter |
TINYINT(Object value)
|
static InParameter |
VARBINARY(Object value)
|
static InParameter |
VARCHAR(Object value)
|
String |
asSql(GString gstring, List values)
|
int |
call(String sql)
Performs a stored procedure call. |
int |
call(String sql, List params)
Performs a stored procedure call with the given parameters. |
void |
call(String sql, List params, Closure closure)
Performs a stored procedure call with the given parameters. |
int |
call(GString gstring)
Performs a stored procedure call with the given parameters. |
void |
call(GString gstring, Closure closure)
Performs a stored procedure call with the given parameters, calling the closure once with all result objects. |
void |
close()
If this SQL object was created with a Connection then this method closes the connection. |
void |
closeResources(Connection connection, Statement statement, ResultSet results)
|
void |
closeResources(Connection connection, Statement statement)
|
void |
commit()
|
void |
configure(Statement statement)
Provides a hook to be able to configure JDBC statements, such as to configure |
Statement |
createConnection(Connection connection)
|
Connection |
createConnection()
|
DataSet |
dataSet(String table)
|
DataSet |
dataSet(Class type)
|
void |
eachRow(String sql, Closure closure)
Performs the given SQL query calling the closure with each row of the result set. |
void |
eachRow(String sql, Closure metaClosure, Closure rowClosure)
Performs the given SQL query calling closures for metadata and each row |
void |
eachRow(String sql, List params, Closure closure)
Performs the given SQL query calling the closure with the result set. |
void |
eachRow(GString gstring, Closure closure)
Performs the given SQL query calling the closure with the result set. |
boolean |
execute(String sql)
Executes the given piece of SQL. |
boolean |
execute(String sql, List params)
Executes the given piece of SQL with parameters. |
boolean |
execute(GString gstring)
Executes the given SQL with embedded expressions inside. |
List |
executeInsert(String sql)
|
List |
executeInsert(String sql, List params)
|
List |
executeInsert(GString gstring)
Executes the given SQL with embedded expressions inside, and returns the values of any auto-generated colums, such as an autoincrement ID field. |
int |
executeUpdate(String sql)
Executes the given SQL update. |
int |
executeUpdate(String sql, List params)
Executes the given SQL update with parameters. |
int |
executeUpdate(GString gstring)
Executes the given SQL update with embedded expressions inside. |
static ExpandedVariable |
expand(Object object)
Creates a variable to be expanded in the Sql string rather than representing an sql parameter. |
int |
findWhereKeyword(String sql)
Find the first 'where' keyword in the sql. |
Object |
firstRow(String sql)
Performs the given SQL query and return the first row of the result set. |
Object |
firstRow(GString gstring)
Performs the given SQL query and return the first row of the result set. |
Object |
firstRow(String sql, List params)
Performs the given SQL query with the list of params and return the first row of the result set. |
Connection |
getConnection()
If this instance was created with a single Connection then the connection is returned. |
DataSource |
getDataSource()
|
List |
getParameters(GString gstring)
|
int |
getResultSetConcurrency()
Gets the resultSetConcurrency for statements created using the connection. |
int |
getResultSetHoldability()
Gets the resultSetHoldability for statements created using the connection. |
int |
getResultSetType()
Gets the resultSetType for statements created using the connection. |
int |
getUpdateCount()
|
static InParameter |
in(int type, Object value)
Create a new InParameter |
static InOutParameter |
inout(InParameter in)
Create an inout parameter using this in parameter. |
static void |
loadDriver(String driverClassName)
Attempts to load the JDBC driver on the thread, current or system class loaders |
static Sql |
newInstance(String url)
let's only warn of using deprecated methods once |
static Sql |
newInstance(String url, Properties properties)
Creates a new Sql instance given a JDBC connection URL and some properties. |
static Sql |
newInstance(String url, Properties properties, String driverClassName)
Creates a new Sql instance given a JDBC connection URL, some properties and a driver class name. |
static Sql |
newInstance(String url, String user, String password)
Creates a new Sql instance given a JDBC connection URL, a username and a password. |
static Sql |
newInstance(String url, String user, String password, String driverClassName)
Creates a new Sql instance given a JDBC connection URL, a username, a password and a driver class name. |
static Sql |
newInstance(String url, String driverClassName)
Creates a new Sql instance given a JDBC connection URL and a driver class name. |
String |
nullify(String sql)
replace ?'"? |
static OutParameter |
out(int type)
Create a new OutParameter |
void |
query(String sql, Closure closure)
Performs the given SQL query calling the closure with the result set. |
void |
query(String sql, List params, Closure closure)
Performs the given SQL query with parameters calling the closure with the result set. |
void |
query(GString gstring, Closure closure)
Performs the given SQL query calling the closure with the result set. |
void |
queryEach(String sql, Closure closure)
|
void |
queryEach(String sql, List params, Closure closure)
|
void |
queryEach(GString gstring, Closure closure)
|
static ResultSetOutParameter |
resultSet(int type)
Create a new ResultSetOutParameter |
void |
rollback()
|
List |
rows(String sql)
Performs the given SQL query and return the rows of the result set. |
List |
rows(GString gstring)
Performs the given SQL query and return the rows of the result set. |
List |
rows(String sql, Closure metaClosure)
Performs the given SQL query and return the rows of the result set. |
List |
rows(String sql, List params)
Performs the given SQL query with the list of params and return the rows of the result set. |
void |
setObject(PreparedStatement statement, int i, Object value)
Strategy method allowing derived classes to handle types differently such as for CLOBs etc. |
void |
setParameters(List params, PreparedStatement statement)
Appends the parameters to the given statement. |
void |
setResultSetConcurrency(int resultSetConcurrency)
Sets the resultSetConcurrency for statements created using the connection. |
void |
setResultSetHoldability(int resultSetHoldability)
Sets the resultSetHoldability for statements created using the connection. |
void |
setResultSetType(int resultSetType)
Sets the resultSetType for statements created using the connection. |
void |
warnDeprecated()
|
void |
withStatement(Closure configureStatement)
Allows a closure to be passed in to configure the JDBC statements before they are executed to do things like set the query size etc. |
Constructor Detail |
---|
public Sql(DataSource dataSource)
public Sql(Connection connection)
public Sql(Sql parent)
Method Detail |
---|
public static InParameter ARRAY(Object value)
public static InParameter BIGINT(Object value)
public static InParameter BINARY(Object value)
public static InParameter BIT(Object value)
public static InParameter BLOB(Object value)
public static InParameter BOOLEAN(Object value)
public static InParameter CHAR(Object value)
public static InParameter CLOB(Object value)
public static InParameter DATALINK(Object value)
public static InParameter DATE(Object value)
public static InParameter DECIMAL(Object value)
public static InParameter DISTINCT(Object value)
public static InParameter DOUBLE(Object value)
public static InParameter FLOAT(Object value)
public static InParameter INTEGER(Object value)
public static InParameter JAVA_OBJECT(Object value)
public static InParameter LONGVARBINARY(Object value)
public static InParameter LONGVARCHAR(Object value)
public static InParameter NULL(Object value)
public static InParameter NUMERIC(Object value)
public static InParameter OTHER(Object value)
public static InParameter REAL(Object value)
public static InParameter REF(Object value)
public static InParameter SMALLINT(Object value)
public static InParameter STRUCT(Object value)
public static InParameter TIME(Object value)
public static InParameter TIMESTAMP(Object value)
public static InParameter TINYINT(Object value)
public static InParameter VARBINARY(Object value)
public static InParameter VARCHAR(Object value)
String asSql(GString gstring, List values)
public int call(String sql)
public int call(String sql, List params)
public void call(String sql, List params, Closure closure)
public int call(GString gstring)
public void call(GString gstring, Closure closure)
public void close()
void closeResources(Connection connection, Statement statement, ResultSet results)
void closeResources(Connection connection, Statement statement)
public void commit()
void configure(Statement statement)
Statement createConnection(Connection connection)
Connection createConnection()
public DataSet dataSet(String table)
public DataSet dataSet(Class type)
public void eachRow(String sql, Closure closure)
public void eachRow(String sql, Closure metaClosure, Closure rowClosure)
public void eachRow(String sql, List params, Closure closure)
public void eachRow(GString gstring, Closure closure)
public boolean execute(String sql)
true
if the first result is a ResultSet
false
if it is an update count or there are
no results
public boolean execute(String sql, List params)
true
if the first result is a ResultSet
false
if it is an update count or there are
no results
public boolean execute(GString gstring)
true
if the first result is a ResultSet
false
if it is an update count or there are
no results
public List executeInsert(String sql)
public List executeInsert(String sql, List params)
public List executeInsert(GString gstring)
Executes the given SQL with embedded expressions inside, and
returns the values of any auto-generated colums, such as an
autoincrement ID field. These values can be accessed using
array notation. For example, to return the second auto-generated
column value of the third row, use keys[3][1]
. The
method is designed to be used with SQL INSERT statements, but is
not limited to them.
The standard use for this method is when a table has an autoincrement ID column and you want to know what the ID is for a newly inserted row. In this example, we insert a single row into a table in which the first column contains the autoincrement ID:
def sql = Sql.newInstance("jdbc:mysql://localhost:3306/groovy", "user", "password", "com.mysql.jdbc.Driver") def keys = sql.insert("insert into test_table (INT_DATA, STRING_DATA) " + "VALUES (1, 'Key Largo')") def id = keys[0][0] // 'id' now contains the value of the new row's ID column. // It can be used to update an object representation's // id attribute for example. ...
public int executeUpdate(String sql)
public int executeUpdate(String sql, List params)
public int executeUpdate(GString gstring)
public static ExpandedVariable expand(Object object)
int findWhereKeyword(String sql)
public Object firstRow(String sql)
public Object firstRow(GString gstring)
public Object firstRow(String sql, List params)
public Connection getConnection()
public DataSource getDataSource()
List getParameters(GString gstring)
public int getResultSetConcurrency()
public int getResultSetHoldability()
public int getResultSetType()
public int getUpdateCount()
public static InParameter in(int type, Object value)
public static InOutParameter inout(InParameter in)
public static void loadDriver(String driverClassName)
public static Sql newInstance(String url)
public static Sql newInstance(String url, Properties properties)
jdbc:subprotocol:subname
public static Sql newInstance(String url, Properties properties, String driverClassName)
jdbc:subprotocol:subname
public static Sql newInstance(String url, String user, String password)
jdbc:subprotocol:subname
public static Sql newInstance(String url, String user, String password, String driverClassName)
jdbc:subprotocol:subname
public static Sql newInstance(String url, String driverClassName)
jdbc:subprotocol:subname
String nullify(String sql)
public static OutParameter out(int type)
public void query(String sql, Closure closure)
public void query(String sql, List params, Closure closure)
public void query(GString gstring, Closure closure)
public void queryEach(String sql, Closure closure)
public void queryEach(String sql, List params, Closure closure)
public void queryEach(GString gstring, Closure closure)
public static ResultSetOutParameter resultSet(int type)
public void rollback()
public List rows(String sql)
public List rows(GString gstring)
public List rows(String sql, Closure metaClosure)
public List rows(String sql, List params)
void setObject(PreparedStatement statement, int i, Object value)
void setParameters(List params, PreparedStatement statement)
public void setResultSetConcurrency(int resultSetConcurrency)
ResultSet
ResultSet.CONCUR_READ_ONLY
or
ResultSet.CONCUR_UPDATABLE
public void setResultSetHoldability(int resultSetHoldability)
ResultSet
ResultSet.HOLD_CURSORS_OVER_COMMIT
or
ResultSet.CLOSE_CURSORS_AT_COMMIT
public void setResultSetType(int resultSetType)
ResultSet
ResultSet.TYPE_FORWARD_ONLY
,
ResultSet.TYPE_SCROLL_INSENSITIVE
, or
ResultSet.TYPE_SCROLL_SENSITIVE
void warnDeprecated()
public void withStatement(Closure configureStatement)