Shink
2005-11-22, 10:57:24
Kennt irgenjemand von euch eine einfache, überschaubare und ausgereifte Lösung, um SQL-Statements in Java dynamisch über Objekte und Methoden zu erzeugen?
Ich würde so etwas suchen wie: http://sourceforge.net/projects/sqlom
nur eben für Java
Als Beispiel:
FromTerm tCustomers = FromTerm.Table("customers", "c");
FromTerm tProducts = FromTerm.Table("products", "p");
FromTerm tOrders = FromTerm.Table("orders", "o");
SelectQuery query = new SelectQuery();
query.Columns.Add(new SelectColumn("name", tCustomers));
query.Columns.Add(new SelectColumn("name", tProducts));
query.Columns.Add(new SelectColumn("price", tProducts));
query.FromClause.BaseTable = tCustomers;
query.FromClause.Join(JoinType.Left, tCustomers, tOrders, "customerId", "customerId");
query.FromClause.Join(JoinType.Inner, tOrders, tProducts, "productId", "productId");
query.WherePhrase.Terms.Add(WhereTerm.CreateCompare(
SqlExpression.Field("name", tCustomers),
SqlExpression.String("John"),
CompareOperator.Equal));
Ich würde so etwas suchen wie: http://sourceforge.net/projects/sqlom
nur eben für Java
Als Beispiel:
FromTerm tCustomers = FromTerm.Table("customers", "c");
FromTerm tProducts = FromTerm.Table("products", "p");
FromTerm tOrders = FromTerm.Table("orders", "o");
SelectQuery query = new SelectQuery();
query.Columns.Add(new SelectColumn("name", tCustomers));
query.Columns.Add(new SelectColumn("name", tProducts));
query.Columns.Add(new SelectColumn("price", tProducts));
query.FromClause.BaseTable = tCustomers;
query.FromClause.Join(JoinType.Left, tCustomers, tOrders, "customerId", "customerId");
query.FromClause.Join(JoinType.Inner, tOrders, tProducts, "productId", "productId");
query.WherePhrase.Terms.Add(WhereTerm.CreateCompare(
SqlExpression.Field("name", tCustomers),
SqlExpression.String("John"),
CompareOperator.Equal));