Name

<sql:query>

Synopsis

The <sql:query> action executes an SQL SELECT statement and saves the result in a scoped variable. The statement may contain question marks as placeholders for values assigned by nested <sql:param> and <sql:dateParam> actions.

The action uses a connection provided by an <sql:transaction> action, or—if not part of a transaction—from the explicitly specified data source or the data-source configuration setting. The number of rows to retrieve can be limited explicitly or by the maximum rows configuration setting.

Syntax 1: Without a body

<sql:query sql="sqlSelectStatement" 
  [dataSource="dataSource"]
  [maxRows="maxRows"]
  [startRow="index"]
  var="var" [scope="page|request|session|application"] />

Syntax 2: With a body for parameters

<sql:query sql="sqlSelectStatement"
  [dataSource="dataSource"]
  [maxRows="maxRows"]
  [startRow="index"]
  var="var" [scope="page|request|session|application"]>
  <sql:param> actions
</sql:query>

Syntax 3: With a body for the statement and parameters

<sql:query
  [dataSource="dataSource"]
  [maxRows="maxRows"]
  [startRow="index"]
  var="var" [scope="page|request|session|application"]>
  sqlSelectStatement
                     <sql:param> actions
</sql:query>

Attributes

Attribute name

Java type

Dynamic value accepted

Description

sql
String

Yes

The SQL statement.

dataSource
String or javax.sql.DataSource

Yes

The data source to use. If specified as a String, it can be either a JNDI path or a list of JDBC parameters as described for the data-source configuration setting. ...

Get JavaServer Pages, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.