Revision 44644 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/test/java/org/gvsig/fmap/dal/store/jdbc2/SQLBuilderTest.java
SQLBuilderTest.java | ||
---|---|---|
1 | 1 |
package org.gvsig.fmap.dal.store.jdbc2; |
2 | 2 |
|
3 |
import java.util.List; |
|
4 | 3 |
import junit.framework.TestCase; |
5 | 4 |
import org.apache.commons.lang3.ArrayUtils; |
6 | 5 |
import org.cresques.cts.IProjection; |
7 | 6 |
import org.gvsig.expressionevaluator.ExpressionBuilder; |
7 |
import org.gvsig.expressionevaluator.GeometryExpressionBuilder; |
|
8 | 8 |
import org.gvsig.fmap.crs.CRSFactory; |
9 | 9 |
import org.gvsig.fmap.dal.DALLocator; |
10 | 10 |
import org.gvsig.fmap.dal.DataManager; |
... | ... | |
56 | 56 |
limit.addVertex(0, 0); |
57 | 57 |
|
58 | 58 |
SQLBuilder sqlbuilder = createSQLBuilder(); |
59 |
ExpressionBuilder expbuilder = sqlbuilder.expression(); |
|
59 |
GeometryExpressionBuilder expbuilder = sqlbuilder.expression();
|
|
60 | 60 |
|
61 | 61 |
sqlbuilder.select().column().value( |
62 | 62 |
expbuilder.as_geometry( |
... | ... | |
328 | 328 |
IProjection proj = CRSFactory.getCRS("EPSG:4326"); |
329 | 329 |
|
330 | 330 |
SQLBuilder sqlbuilder = createSQLBuilder(); |
331 |
ExpressionBuilder expbuilder = sqlbuilder.expression(); |
|
331 |
GeometryExpressionBuilder expbuilder = sqlbuilder.expression();
|
|
332 | 332 |
|
333 | 333 |
sqlbuilder.insert().table().database("master").schema("dbo").name("test1"); |
334 | 334 |
sqlbuilder.insert().column().name("id").with_value(expbuilder.parameter("id")); |
335 | 335 |
sqlbuilder.insert().column().name("name").with_value(expbuilder.parameter("name")); |
336 |
sqlbuilder.insert().column().name("geom").with_value(expbuilder.parameter("geom").as_geometry_variable().srs(proj));
|
|
336 |
sqlbuilder.insert().column().name("geom").with_value(expbuilder.parameter("geom").as_variable().srs(proj)); |
|
337 | 337 |
|
338 | 338 |
System.out.println("# Test:: testPerformInserts1"); |
339 | 339 |
System.out.println("# SQL:: " + sqlbuilder.toString()); |
... | ... | |
357 | 357 |
IProjection proj = CRSFactory.getCRS("EPSG:4326"); |
358 | 358 |
|
359 | 359 |
SQLBuilder sqlbuilder = createSQLBuilder(); |
360 |
ExpressionBuilder expbuilder = sqlbuilder.expression(); |
|
360 |
GeometryExpressionBuilder expbuilder = sqlbuilder.expression();
|
|
361 | 361 |
|
362 | 362 |
sqlbuilder.insert().table().database("master").schema("dbo").name("test1"); |
363 | 363 |
sqlbuilder.insert().column().name("id").with_value(expbuilder.parameter("id")); |
364 | 364 |
sqlbuilder.insert().column().name("name").with_value(expbuilder.parameter("name")); |
365 |
sqlbuilder.insert().column().name("geom").with_value(expbuilder.parameter("geom").as_geometry_variable().srs(proj));
|
|
365 |
sqlbuilder.insert().column().name("geom").with_value(expbuilder.parameter("geom").as_variable().srs(proj)); |
|
366 | 366 |
|
367 | 367 |
System.out.println("# Test:: testPerformInserts2"); |
368 | 368 |
System.out.println("# SQL:: " + sqlbuilder.toString()); |
... | ... | |
386 | 386 |
IProjection proj = CRSFactory.getCRS("EPSG:4326"); |
387 | 387 |
|
388 | 388 |
SQLBuilder sqlbuilder = createSQLBuilder(); |
389 |
ExpressionBuilder expbuilder = sqlbuilder.expression(); |
|
389 |
GeometryExpressionBuilder expbuilder = sqlbuilder.expression();
|
|
390 | 390 |
|
391 | 391 |
sqlbuilder.update().table().database("master").schema("dbo").name("test1"); |
392 | 392 |
sqlbuilder.update().where().and( |
... | ... | |
397 | 397 |
); |
398 | 398 |
sqlbuilder.update().column().name("name").with_value(expbuilder.parameter("name")); |
399 | 399 |
sqlbuilder.update().column().name("geom").with_value( |
400 |
expbuilder.parameter("geom").as_geometry_variable().srs(proj)
|
|
400 |
expbuilder.parameter("geom").as_variable().srs(proj) |
|
401 | 401 |
); |
402 | 402 |
|
403 | 403 |
System.out.println("# Test:: testPerformUpdates"); |
... | ... | |
422 | 422 |
IProjection proj = CRSFactory.getCRS("EPSG:4326"); |
423 | 423 |
|
424 | 424 |
SQLBuilder sqlbuilder = createSQLBuilder(); |
425 |
ExpressionBuilder expbuilder = sqlbuilder.expression(); |
|
425 |
GeometryExpressionBuilder expbuilder = sqlbuilder.expression();
|
|
426 | 426 |
|
427 | 427 |
sqlbuilder.update().table().database("master").schema("dbo").name("test1"); |
428 | 428 |
sqlbuilder.update().where().and( |
... | ... | |
433 | 433 |
); |
434 | 434 |
sqlbuilder.update().column().name("name").with_value(expbuilder.parameter("name")); |
435 | 435 |
sqlbuilder.update().column().name("geom").with_value( |
436 |
expbuilder.parameter("geom").as_geometry_variable()
|
|
436 |
expbuilder.parameter("geom").as_variable() |
|
437 | 437 |
.srs(expbuilder.parameter().value(proj)) |
438 | 438 |
); |
439 | 439 |
|
... | ... | |
574 | 574 |
|
575 | 575 |
//# Test:: testForeingValue |
576 | 576 |
//# SQL1:: SELECT "ID", "NAME", "DESCRIPTION", "TYPE" FROM "dbo"."test1" WHERE (( (FOREING_VALUE('TYPE.DESCRIPTION')) LIKE ('A%') ) AND ( (FOREING_VALUE('PHONE_TYPE.DESCRIPTION')) = ('mobile') )) |
577 |
//# SQL2:: SELECT "ID", "NAME", "dbo"."test1"."DESCRIPTION", "TYPE", "dbo"."TYPES"."DESCRIPTION", "dbo"."PHONE_TYPES"."DESCRIPTION" FROM "dbo"."test1" LEFT JOIN "dbo"."TYPES" ON ( ("dbo"."test1"."TYPE") = ("dbo"."TYPES"."ID") ) LEFT JOIN "dbo"."PHONE_TYPES" ON ( ("dbo"."test1"."PHONE_TYPE") = ("dbo"."PHONE_TYPES"."ID") ) WHERE (( ("dbo"."TYPES"."DESCRIPTION") LIKE ('A%') ) AND ( ("dbo"."PHONE_TYPES"."DESCRIPTION") = ('mobile') )) |
|
577 |
//# SQL2:: SELECT "ID", "NAME", "dbo"."test1"."DESCRIPTION", "dbo"."test1"."TYPE", "dbo"."TYPES"."DESCRIPTION", "dbo"."PHONE_TYPES"."DESCRIPTION" FROM "dbo"."test1" LEFT JOIN "dbo"."TYPES" ON ( ("dbo"."test1"."TYPE") = ("dbo"."TYPES"."ID") ) LEFT JOIN "dbo"."PHONE_TYPES" ON ( ("dbo"."test1"."PHONE_TYPE") = ("dbo"."PHONE_TYPES"."ID") ) WHERE (( ("dbo"."TYPES"."DESCRIPTION") LIKE ('A%') ) AND ( ("dbo"."PHONE_TYPES"."DESCRIPTION") = ('mobile') ))
|
|
578 | 578 |
//# Variables:: [DESCRIPTION, DESCRIPTION, DESCRIPTION, ID, NAME, TYPE] |
579 | 579 |
//# Parametros:: [] |
580 | 580 |
//# attrNames:: [TYPE.DESCRIPTION, PHONE_TYPE.DESCRIPTION] |
581 | 581 |
|
582 | 582 |
assertEquals( |
583 |
"SELECT \"ID\", \"NAME\", \"dbo\".\"test1\".\"DESCRIPTION\", \"TYPE\", \"dbo\".\"TYPES\".\"DESCRIPTION\", \"dbo\".\"PHONE_TYPES\".\"DESCRIPTION\" FROM \"dbo\".\"test1\" LEFT JOIN \"dbo\".\"TYPES\" ON ( (\"dbo\".\"test1\".\"TYPE\") = (\"dbo\".\"TYPES\".\"ID\") ) LEFT JOIN \"dbo\".\"PHONE_TYPES\" ON ( (\"dbo\".\"test1\".\"PHONE_TYPE\") = (\"dbo\".\"PHONE_TYPES\".\"ID\") ) WHERE (( (\"dbo\".\"TYPES\".\"DESCRIPTION\") LIKE ('A%') ) AND ( (\"dbo\".\"PHONE_TYPES\".\"DESCRIPTION\") = ('mobile') ))", |
|
583 |
"SELECT \"ID\", \"NAME\", \"dbo\".\"test1\".\"DESCRIPTION\", \"dbo\".\"test1\".\"TYPE\", \"dbo\".\"TYPES\".\"DESCRIPTION\", \"dbo\".\"PHONE_TYPES\".\"DESCRIPTION\" FROM \"dbo\".\"test1\" LEFT JOIN \"dbo\".\"TYPES\" ON ( (\"dbo\".\"test1\".\"TYPE\") = (\"dbo\".\"TYPES\".\"ID\") ) LEFT JOIN \"dbo\".\"PHONE_TYPES\" ON ( (\"dbo\".\"test1\".\"PHONE_TYPE\") = (\"dbo\".\"PHONE_TYPES\".\"ID\") ) WHERE (( (\"dbo\".\"TYPES\".\"DESCRIPTION\") LIKE ('A%') ) AND ( (\"dbo\".\"PHONE_TYPES\".\"DESCRIPTION\") = ('mobile') ))",
|
|
584 | 584 |
sqlbuilder.toString() |
585 | 585 |
); |
586 | 586 |
assertEquals( |
Also available in: Unified diff