Mercurial > dive4elements > gnv-client
annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java @ 267:000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
geo-backend/trunk@217 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Wed, 14 Oct 2009 09:28:18 +0000 |
parents | 1530890b28c9 |
children | ff1b7967e6b9 |
rev | line source |
---|---|
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
1 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
2 * |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
3 */ |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
4 package de.intevation.gnv.geobackend.sde.datasources; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
5 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
6 import java.sql.Connection; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
7 import java.sql.ResultSet; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
8 import java.sql.SQLException; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 import java.sql.SQLWarning; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
10 import java.sql.Statement; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
11 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
12 import org.apache.log4j.Logger; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
13 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
14 import com.esri.sde.sdk.client.SDEPoint; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
15 import com.esri.sde.sdk.client.SeColumnDefinition; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
16 import com.esri.sde.sdk.client.SeConnection; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
17 import com.esri.sde.sdk.client.SeException; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
18 import com.esri.sde.sdk.client.SeFilter; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
19 import com.esri.sde.sdk.client.SeLayer; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 import com.esri.sde.sdk.client.SeQuery; |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
21 import com.esri.sde.sdk.client.SeQueryInfo; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
22 import com.esri.sde.sdk.client.SeRow; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
23 import com.esri.sde.sdk.client.SeShape; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
24 import com.esri.sde.sdk.client.SeShapeFilter; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
25 import com.esri.sde.sdk.client.SeSqlConstruct; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
26 import com.vividsolutions.jts.geom.Geometry; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
27 import com.vividsolutions.jts.io.WKTReader; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
28 |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
29 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
30 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
31 * @author Tim Englich <tim.englich@intevation.de> |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
32 * |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
33 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
34 public class ArcSDEStatement implements Statement { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
35 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
36 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
37 * the logger, used to log exceptions and additonaly information |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
38 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
39 private static Logger log = Logger.getLogger(ArcSDEStatement.class); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
40 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
41 private ArcSDEConnection connection = null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
43 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
44 * Constructor |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
46 public ArcSDEStatement(ArcSDEConnection connection) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 this.connection = connection; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
49 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 * @see java.sql.Statement#addBatch(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
52 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
53 public void addBatch(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
54 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
55 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
56 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
57 * @see java.sql.Statement#cancel() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
58 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
59 public void cancel() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
60 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
61 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
62 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
63 * @see java.sql.Statement#clearBatch() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
64 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
65 public void clearBatch() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
66 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
67 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
68 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
69 * @see java.sql.Statement#clearWarnings() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
70 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
71 public void clearWarnings() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
72 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
73 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
74 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
75 * @see java.sql.Statement#close() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
76 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
77 public void close() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
78 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
79 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
80 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
81 * @see java.sql.Statement#execute(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
82 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
83 public boolean execute(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
84 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
85 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
86 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
87 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
88 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
89 * @see java.sql.Statement#execute(java.lang.String, int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
90 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
91 public boolean execute(String arg0, int arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
92 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
93 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
94 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
95 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
96 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
97 * @see java.sql.Statement#execute(java.lang.String, int[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
98 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
99 public boolean execute(String arg0, int[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
100 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
101 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
102 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
103 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
105 * @see java.sql.Statement#execute(java.lang.String, java.lang.String[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
106 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
107 public boolean execute(String arg0, String[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
108 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
109 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
110 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
111 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
112 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
113 * @see java.sql.Statement#executeBatch() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
114 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
115 public int[] executeBatch() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
116 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
117 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
118 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
119 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 * @see java.sql.Statement#executeQuery(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
122 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
123 public ResultSet executeQuery(String statement) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
124 try { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
125 SeQuery query = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
126 if (statement.toLowerCase().contains("st_astext")){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
127 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
128 String[] values = statement.toLowerCase().split("where", 2); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
129 String where = values.length > 1 ? values[1].trim() : ""; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
130 values = values[0].split("from", 2); |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
131 String[] tableNames = values[1].toUpperCase().trim().split(","); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
132 String[] returnFields = values[0].replaceAll("select", "").trim().split(","); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
133 String geometryColumnName = "N/N"; |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
134 String byClause = null; |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
135 int byClausePos = where.indexOf("group by"); // TODO: Reihenfolge signifikant? |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
136 if (byClausePos < 0){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
137 byClausePos = where.indexOf("order by"); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
138 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
139 if (byClausePos > 0){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
140 byClause = where.substring(byClausePos); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
141 where = where.substring(0,byClausePos); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
142 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
143 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
144 for (int i = 0; i < returnFields.length; i++){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
145 returnFields[i] = returnFields[i].trim(); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
146 if (returnFields[i].startsWith("st_astext(")){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
147 returnFields[i] = returnFields[i].replaceAll("st_astext", ""); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
148 returnFields[i] = returnFields[i].substring(1, returnFields[i].length()-1); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
149 geometryColumnName = returnFields[i]; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
150 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
151 } |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
152 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
153 for (int i = 0; i < tableNames.length; i++){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
154 tableNames[i] = tableNames[i].trim(); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
155 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
156 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
157 Geometry g = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
158 int pos = where.indexOf("intersects"); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
159 if (pos > 0 ){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
160 String substr = where.substring(pos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
161 where = where.substring(0,where.lastIndexOf("and")); // TODO auch or unterst�tzen |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
162 String intersectsStmt = substr.substring(0, substr.lastIndexOf(")")); // Annahme r�umliches Stmt steht am Ende |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
163 String wkt = intersectsStmt.substring(intersectsStmt.indexOf("\""), intersectsStmt.lastIndexOf("\"")).replace("\"", "").trim(); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
164 g = new WKTReader().read(wkt); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
165 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
166 } |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
167 return this.executeQuery(this.connection.getSeConnection(), tableNames, geometryColumnName, where, g, returnFields,byClause); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
168 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
169 query = new SeQuery(this.connection.getSeConnection()); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
170 query.prepareSql(statement); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
171 query.execute(); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
172 return this.handleResultSet(query); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
173 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
174 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
175 } catch (Exception e) { |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
176 log.error(e,e); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
177 throw new SQLException(e.getMessage()); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
178 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
179 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
180 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
181 } |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
182 |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
183 private ResultSet executeQuery(SeConnection con, String[] pLayername, |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
184 String pSpatialColumnName, String pWhere, |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
185 Geometry g, String[] pReturnFields, String byClause) |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
186 throws SQLException { |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
187 log.debug("executeQuery()"); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
188 try { |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
189 // get the layer for querying |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
190 |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
191 SeShapeFilter[] filters = null; |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
192 if (g != null){ |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
193 SeLayer lLayer = new SeLayer(con, pLayername[0], pSpatialColumnName); |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
194 SeShape shape = new SeShape(); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
195 shape.setCoordRef(lLayer.getCoordRef()); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
196 |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
197 SDEPoint[] lPoints = new ArcSDEUtils().createPoints(g); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
198 |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
199 shape.generatePolygon(lPoints.length, 1, null, lPoints); |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
200 SeShapeFilter filter = new SeShapeFilter(pLayername[0], |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
201 pSpatialColumnName, shape, SeFilter.METHOD_AI); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
202 filters = new SeShapeFilter[1]; |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
203 filters[0] = filter; |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
204 } |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
205 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
206 SeQuery spatialQuery = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
207 SeSqlConstruct sqlCons = new SeSqlConstruct(pLayername, pWhere); |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
208 spatialQuery = new SeQuery(con);//, pReturnFields, sqlCons); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
209 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
210 SeQueryInfo queryInfo = new SeQueryInfo(); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
211 queryInfo.setColumns(pReturnFields); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
212 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
213 if (byClause != null){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
214 queryInfo.setByClause(byClause); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
215 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
216 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
217 queryInfo.setConstruct(sqlCons); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
218 spatialQuery.prepareQueryInfo(queryInfo); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
219 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
220 /* |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
221 * Set spatial constraints |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
222 */ |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
223 if (filters != null){ |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
224 spatialQuery.setSpatialConstraints(SeQuery.SE_OPTIMIZE, false, |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
225 filters); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
226 } |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
227 spatialQuery.execute(); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
228 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
229 return this.handleResultSet(spatialQuery); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
230 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
231 } catch (Exception e) { |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
232 if (e instanceof SeException){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
233 ArcSDEUtils.printError((SeException)e); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
234 }else{ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
235 log.error(e.getMessage(), e); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
236 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
237 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
238 throw new SQLException(e.getMessage()); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
239 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
240 } |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
241 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
242 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
243 * @see java.sql.Statement#executeUpdate(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
244 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
245 public int executeUpdate(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
246 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
247 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
248 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
249 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
250 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
251 * @see java.sql.Statement#executeUpdate(java.lang.String, int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
252 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
253 public int executeUpdate(String arg0, int arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
254 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
255 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
256 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
257 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
258 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
259 * @see java.sql.Statement#executeUpdate(java.lang.String, int[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
260 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
261 public int executeUpdate(String arg0, int[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
262 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
263 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
264 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
265 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
266 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
267 * @see java.sql.Statement#executeUpdate(java.lang.String, java.lang.String[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
268 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
269 public int executeUpdate(String arg0, String[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
270 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
271 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
272 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
273 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
274 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
275 * @see java.sql.Statement#getConnection() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
276 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
277 public Connection getConnection() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
278 return this.connection; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
279 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
280 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
281 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
282 * @see java.sql.Statement#getFetchDirection() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
283 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
284 public int getFetchDirection() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
285 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
286 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
287 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
288 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
289 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
290 * @see java.sql.Statement#getFetchSize() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
291 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
292 public int getFetchSize() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
293 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
294 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
295 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
296 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
297 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
298 * @see java.sql.Statement#getGeneratedKeys() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
299 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
300 public ResultSet getGeneratedKeys() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
301 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
302 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
303 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
304 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
305 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
306 * @see java.sql.Statement#getMaxFieldSize() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
307 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
308 public int getMaxFieldSize() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
309 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
310 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
311 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
312 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
313 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
314 * @see java.sql.Statement#getMaxRows() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
315 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
316 public int getMaxRows() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
317 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
318 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
319 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
320 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
321 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
322 * @see java.sql.Statement#getMoreResults() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
323 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
324 public boolean getMoreResults() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
325 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
326 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
327 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
328 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
329 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
330 * @see java.sql.Statement#getMoreResults(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
331 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
332 public boolean getMoreResults(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
333 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
334 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
335 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
336 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
337 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
338 * @see java.sql.Statement#getQueryTimeout() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
339 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
340 public int getQueryTimeout() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
341 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
342 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
343 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
344 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
345 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
346 * @see java.sql.Statement#getResultSet() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
347 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
348 public ResultSet getResultSet() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
349 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
350 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
351 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
352 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
353 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
354 * @see java.sql.Statement#getResultSetConcurrency() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
355 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
356 public int getResultSetConcurrency() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
357 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
358 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
359 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
360 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
361 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
362 * @see java.sql.Statement#getResultSetHoldability() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
363 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
364 public int getResultSetHoldability() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
365 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
366 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
367 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
368 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
369 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
370 * @see java.sql.Statement#getResultSetType() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
371 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
372 public int getResultSetType() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
373 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
374 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
375 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
376 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
377 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
378 * @see java.sql.Statement#getUpdateCount() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
379 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
380 public int getUpdateCount() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
381 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
382 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
383 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
384 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
385 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
386 * @see java.sql.Statement#getWarnings() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
387 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
388 public SQLWarning getWarnings() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
389 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
390 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
391 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
392 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
393 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
394 * @see java.sql.Statement#setCursorName(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
395 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
396 public void setCursorName(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
397 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
398 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
399 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
400 * @see java.sql.Statement#setEscapeProcessing(boolean) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
401 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
402 public void setEscapeProcessing(boolean arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
403 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
404 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
405 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
406 * @see java.sql.Statement#setFetchDirection(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
407 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
408 public void setFetchDirection(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
409 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
410 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
411 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
412 * @see java.sql.Statement#setFetchSize(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
413 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
414 public void setFetchSize(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
415 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
416 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
417 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
418 * @see java.sql.Statement#setMaxFieldSize(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
419 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
420 public void setMaxFieldSize(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
421 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
422 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
423 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
424 * @see java.sql.Statement#setMaxRows(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
425 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
426 public void setMaxRows(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
427 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
428 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
429 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
430 * @see java.sql.Statement#setQueryTimeout(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
431 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
432 public void setQueryTimeout(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
433 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
434 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
435 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
436 * Copied from de.intevation.gnv.geobackend.sde.datasources.SDEQuery |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
437 * @param pSeQuery |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
438 * @return |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
439 * @throws SeException |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
440 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
441 private ResultSet handleResultSet(SeQuery pSeQuery) throws SeException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
442 log.debug("ArcSDEStatement,handleResultSet()"); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
443 SDEResultSet lSet = new SDEResultSet(); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
444 SeRow row; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
445 int lCount; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
446 for (lCount = 0; (row = pSeQuery.fetch()) != null; lCount++) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
447 // one time execution |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
448 if (lCount == 0) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
449 // analyze cols of result set |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
450 SeColumnDefinition[] lCols = row.getColumns(); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
451 for (SeColumnDefinition lCol : lCols) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
452 lSet.addCol(new ColDefinition(lCol.getName(), lCol.getType()));// notice: esri-types have been copied into colDefinition class! |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
453 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
454 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
455 short lNumCols = row.getNumColumns(); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
456 Row lBackingRow = new Row(lNumCols); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
457 for (int i = 0; i < lNumCols; i++) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
458 lBackingRow.addObject(row.getObject(i), i); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
459 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
460 lSet.addRow(lBackingRow); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
461 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
462 pSeQuery.close(); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
463 return lSet; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
464 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
465 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
466 } |