svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.db / org.gvsig.fmap.dal.db.jdbc / src / main / java / org / gvsig / fmap / dal / store / jdbc2 / spi / operations / ExecuteOperation.java @ 44058
History | View | Annotate | Download (1.08 KB)
1 | 43020 | jjdelcerro | package org.gvsig.fmap.dal.store.jdbc2.spi.operations; |
---|---|---|---|
2 | |||
3 | import java.sql.Connection; |
||
4 | import java.sql.SQLException; |
||
5 | 43377 | jjdelcerro | import java.sql.Statement; |
6 | 43020 | jjdelcerro | import org.gvsig.fmap.dal.exception.DataException; |
7 | import org.gvsig.fmap.dal.store.jdbc2.JDBCHelper; |
||
8 | import org.gvsig.fmap.dal.store.jdbc2.JDBCUtils; |
||
9 | |||
10 | 43377 | jjdelcerro | public class ExecuteOperation extends AbstractConnectionOperation { |
11 | |||
12 | private final String sql; |
||
13 | 43020 | jjdelcerro | |
14 | 43377 | jjdelcerro | public ExecuteOperation(
|
15 | 43020 | jjdelcerro | JDBCHelper helper, |
16 | 43377 | jjdelcerro | String sql
|
17 | 43020 | jjdelcerro | ) { |
18 | super(helper);
|
||
19 | 43377 | jjdelcerro | this.sql = sql;
|
20 | 43020 | jjdelcerro | } |
21 | |||
22 | @Override
|
||
23 | public final Object perform(Connection conn) throws DataException { |
||
24 | 43377 | jjdelcerro | this.execute(conn, sql);
|
25 | return null; |
||
26 | 43020 | jjdelcerro | } |
27 | |||
28 | 43377 | jjdelcerro | public void execute( |
29 | 43020 | jjdelcerro | Connection conn,
|
30 | 43377 | jjdelcerro | String sql
|
31 | 43020 | jjdelcerro | ) { |
32 | 43377 | jjdelcerro | Statement st = null; |
33 | 43020 | jjdelcerro | try {
|
34 | 43377 | jjdelcerro | st = conn.createStatement(); |
35 | JDBCUtils.execute(st, sql); |
||
36 | 43020 | jjdelcerro | } catch (SQLException ex) { |
37 | 43377 | jjdelcerro | throw new RuntimeException("Can't execute query ["+sql+"].",ex); |
38 | 43020 | jjdelcerro | |
39 | } finally {
|
||
40 | 43377 | jjdelcerro | JDBCUtils.closeQuietly(st); |
41 | 43020 | jjdelcerro | } |
42 | |||
43 | } |
||
44 | } |