I need to be able to duplicate a record, assign it new key values using the generator, then modify a few of the other (non-key) fields. I'm updating to version...
I know we all hate XML files, and after my brief interlude with Hibernate I understand why. But I do have a need to be able to specify some column names at run...
Welcome back. Is SFieldScalar.isPrimaryKey what you want? (SimpleORM 3.0 is more focused on columns than references, which simplifies it.) In general, all...
berglas@...
Mar 4, 2009 7:34 am
1730
This is exactly the sort of thing that is easy to do with SimpleOrm, but not reflective tools like Hibernate. SubTypeTest provides an example of the sort of...
berglas@...
Mar 4, 2009 7:38 am
1731
Hello All, I have added a new package, SimpleServlets, which can be checked out from subverson. From the web page:- SimpleServlets A very simple environment...
The reason that SimpleORM takes a DataSource parameter instead of a JDBC Connection was so that it could open a second connection as a way to generate sequence...
Hello Franck You have been busy! There are many things going on here. I would generally prefer that we do one thing at a time, check it in, review and think,...
Hello Franck, Now the big question -- is implementing full joins a good idea in the first place? I have only spent a couple of hours working through your join...
PS. Outer joins are all about returning nulls for missing records. I could not see anything in retrieve record to do that. Do we have a test case that...
Hi Anthony, I'll read carrefully your mails today... ... We have a test the other way around, JoinQueryTests.leftJoinTest(), that retrieve Depts plus their...
Hi Anthony, I have made quite a few modification following your remarks. See my comments below... ... Ok, I renamed Table to SAlias. I'll use SAlias for Table...
Hi again, thanks for your comments ... I think this problem is handled by the rsindex part. See my other mail. ... Yep. ... I know that. I am also still...
Hello Franck, I like your examples. So, it looks like the full joins with aliases are going in. The advantage of subselects is that aliases are easy -- no...
Hello Franck, I have reread the code and thought about the problem and I really cannot see why there is a Join class separate from the SAlias class. The data...
Hello Franck, I really do not like making SRecordInstance Comparable. What we really want later is to be able to apply SQueries to disconnected SDataSets,...
Hello Anthony, ... You are right. So I tackled the SAlias / Join problem. I finally merged them and renamed the resulting class to SRelation. So now a SQuery...
Hello, as I said in my other mail, I agree with you. I removed Comparable from SRecordInstance. I added a warning in SRecordComparator API to say it is not...
I'am happy you got convinced :) I also agree join semantics can become weird, as join are not truly associative, nor commutative. We can state it in the doc...
Hello Franck, Looks a lot better. Thanks for adding the join code. It makes SimpleORM complete, even if it does add some complexity. Details:- + SRelation is...
Hello Franck, I was just updating the white paper with SQuery<Employee> subQ2 = new SQuery<Employee>(Employee.EMPLOYEE).setAlias("emp") .join("manager", "emp",...
Hello Anthony, ... I picked SQueryTable and made it a first level class : simpleorm.dataset.SQueryTable ... This test is indeed useless now, as we know from...
Hi, I like the setAlias() solution, that changes the alias for the last added table. I also suggest to call it simply as(). SQuery<Employee> subQ2 = new ...
One caveat is that then the table will first be added with its default alias, which might be used already... So maybe we should really generate alias as...
Generating aliases is definitely a bad idea, as when we use the alias-less methods for eq(), gt(), etc. we would have to tell back what alias has been assigned...
Hi, just out of couriosity, I've run the EclEmma test coverage plugin on Simpleorm (using ATestAll.java). Result is not so bad : 65.4% ! The plugin also shows...
Hello Franck, I really like .as(). This (finally) makes it clear. Well done. (Maybe we could do the same for selectMode.) I think that a tables ArrayList...
Hello, ... I have done it. I added two select() method, one for SSelectMode, the other for SFiedlScalar[]. Both apply to last added table. Then I removed all...