Revision 44295
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.h2/src/main/java/org/gvsig/fmap/dal/store/h2/H2SpatialSQLBuilder.java | ||
---|---|---|
293 | 293 |
if( !column.isGeometry() ) { |
294 | 294 |
if (column.isPrimaryKey()) { |
295 | 295 |
builder.append(" PRIMARY KEY"); |
296 |
} |
|
297 |
if( column.isAutomatic() ) { |
|
298 |
builder.append(" AUTO_INCREMENT"); |
|
299 |
} |
|
300 |
if (column.getDefaultValue() == null) { |
|
301 |
if (column.allowNulls()) { |
|
302 |
builder.append(" DEFAULT NULL"); |
|
296 |
if( column.isAutomatic() ) { |
|
297 |
builder.append(" AUTO_INCREMENT"); |
|
303 | 298 |
} |
304 | 299 |
} else { |
305 |
if( column.getType() == DataTypes.DATE ) { |
|
306 |
builder.append(" DEFAULT ( TIMESTAMP '"); |
|
307 |
Date d = (Date) column.getDefaultValue(); |
|
308 |
builder.append(MessageFormat.format( "{0,date,yyyy-MM-dd HH:mm:ss.S}",d)); |
|
309 |
builder.append("' )"); |
|
300 |
if( column.isAutomatic() ) { |
|
301 |
builder.append(" AUTO_INCREMENT"); |
|
302 |
} |
|
303 |
if (column.getDefaultValue() == null) { |
|
304 |
if (column.allowNulls()) { |
|
305 |
builder.append(" DEFAULT NULL"); |
|
306 |
} |
|
310 | 307 |
} else { |
311 |
builder.append(" DEFAULT '"); |
|
312 |
builder.append(column.getDefaultValue().toString()); |
|
313 |
builder.append("'"); |
|
308 |
if( column.getType() == DataTypes.DATE ) { |
|
309 |
builder.append(" DEFAULT ( TIMESTAMP '"); |
|
310 |
Date d = (Date) column.getDefaultValue(); |
|
311 |
builder.append(MessageFormat.format( "{0,date,yyyy-MM-dd HH:mm:ss.S}",d)); |
|
312 |
builder.append("' )"); |
|
313 |
} else { |
|
314 |
builder.append(" DEFAULT '"); |
|
315 |
builder.append(column.getDefaultValue().toString()); |
|
316 |
builder.append("'"); |
|
317 |
} |
|
314 | 318 |
} |
315 | 319 |
} |
316 | 320 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.h2/src/test/java/org/gvsig/fmap/dal/store/h2/H2SpatialSQLBuilderTest.java | ||
---|---|---|
76 | 76 |
System.out.println("# Variables:: " + ArrayUtils.toString(sqlbuilder.variables_names())); |
77 | 77 |
System.out.println("# Parametros:: " + ArrayUtils.toString(sqlbuilder.parameters_names())); |
78 | 78 |
assertEquals( |
79 |
"SELECT ST_AsBinary(ST_ExtentAggregate(\"the_geom\")) AS \"envelope\" FROM \"test1\" WHERE ( ((ST_Envelope(\"the_geom\")) && (ST_GeomFromWKB((DECODE('000000000300000001000000050000000000000000000000000000000000000000000000004059000000000000405900000000000040590000000000004059000000000000000000000000000000000000000000000000000000000000','hex')), (4326)))) AND ST_Intersects((ST_Envelope(\"the_geom\")),(ST_GeomFromWKB((DECODE('000000000300000001000000050000000000000000000000000000000000000000000000004059000000000000405900000000000040590000000000004059000000000000000000000000000000000000000000000000000000000000','hex')), (4326))) )) AND x = 27",
|
|
79 |
"SELECT ST_AsBinary(ST_Extent(\"the_geom\")) AS \"envelope\" FROM \"test1\" WHERE (( ((ST_Envelope(\"the_geom\")) && (ST_GeomFromWKB((DECODE('000000000300000001000000050000000000000000000000000000000000000000000000004059000000000000405900000000000040590000000000004059000000000000000000000000000000000000000000000000000000000000','hex')), (4326)))) AND ST_Intersects((ST_Envelope(\"the_geom\")),(ST_GeomFromWKB((DECODE('000000000300000001000000050000000000000000000000000000000000000000000000004059000000000000405900000000000040590000000000004059000000000000000000000000000000000000000000000000000000000000','hex')), (4326))) )) AND x = 27)",
|
|
80 | 80 |
sqlbuilder.toString() |
81 | 81 |
); |
82 | 82 |
assertEquals( |
... | ... | |
168 | 168 |
System.out.println("# Variables:: " + ArrayUtils.toString(sqlbuilder.variables_names())); |
169 | 169 |
System.out.println("# Parametros:: " + ArrayUtils.toString(sqlbuilder.parameters_names())); |
170 | 170 |
assertEquals( |
171 |
"CREATE TABLE \"test1\" (\"name\" VARCHAR(45) DEFAULT NULL, \"id\" INTEGER PRIMARY KEY AUTO_INCREMENT DEFAULT '0' NOT NULL, \"geom\" GEOMETRY ); ALTER TABLE \"test1\" ADD CONSTRAINT IF NOT EXISTS \"constraint_test1_geom_dim\" CHECK ST_CoordDim(\"geom\") = 2",
|
|
171 |
"CREATE TABLE \"test1\" (\"name\" VARCHAR(45) DEFAULT NULL, \"id\" INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL, \"geom\" GEOMETRY ); ALTER TABLE \"test1\" ADD CONSTRAINT IF NOT EXISTS \"constraint_test1_geom_dim\" CHECK ST_CoordDim(\"geom\") = 2", |
|
172 | 172 |
sqlbuilder.toString() |
173 | 173 |
); |
174 | 174 |
assertEquals( |
... | ... | |
301 | 301 |
System.out.println("# Variables:: " + ArrayUtils.toString(sqlbuilder.variables_names())); |
302 | 302 |
System.out.println("# Parametros:: " + ArrayUtils.toString(sqlbuilder.parameters_names())); |
303 | 303 |
assertEquals( |
304 |
"DELETE FROM \"test1\" WHERE ( (\"id1\") = (?) ) AND ( (\"id2\") = (?) )",
|
|
304 |
"DELETE FROM \"test1\" WHERE (( (\"id1\") = (?) ) AND ( (\"id2\") = (?) ))",
|
|
305 | 305 |
sqlbuilder.toString() |
306 | 306 |
); |
307 | 307 |
assertEquals( |
Also available in: Unified diff