[cvs] expresso commit by lhamel: oops,
correcting my mistake as I changed
JCorporate Ltd
jcorp at jcorporate.com
Mon Aug 15 06:32:52 UTC 2005
Log Message:
-----------
oops, correcting my mistake as I changed string concatenation into append() calls.
Modified Files:
--------------
expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc:
JoinedDataObject.java
Revision Data
-------------
Index: JoinedDataObject.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java,v
retrieving revision 1.51
retrieving revision 1.52
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java -u -r1.51 -r1.52
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java
@@ -1203,28 +1203,30 @@
getDataObjectsInOrder().get(0);
ArrayList keyFields = primaryObject.getMetaData().getKeyFieldListArray();
- //
- //Performance improvement. If there is only one key field, count on it
- //only.
- //
FastStringBuffer myStatement = FastStringBuffer.getInstance();
+
try {
+ myStatement.append("SELECT COUNT( ");
+ myStatement.append(getDistinct(myPool)); // will be empty string if distinct is not specified for join
+ myStatement.append(" ");
+
if (keyFields.size() > 1) {
- myStatement.append("SELECT COUNT( " +
- myStatement.append(getDistinct(myPool)));
- myStatement.append(" *) FROM ");
+ myStatement.append("*) FROM ");
} else {
+ //
+ //Performance improvement. If there is only one key field, count on it
+ //only.
+ //
DataFieldMetaData keymetadata = primaryObject
.getFieldMetaData((String)
keyFields.get(0));
- myStatement.append("SELECT COUNT( ");
- myStatement.append( myStatement.append(getDistinct(myPool)));
+
myStatement.append(
primaryObject.getJDBCMetaData().getTargetSQLTable(
primaryObject.getDataContext()));
myStatement.append(".");
myStatement.append( keymetadata.getName() );
- myStatement.append( ") FROM ");
+ myStatement.append( " ) FROM ");
}
myStatement.append(this.buildFromClause());
More information about the cvs
mailing list