John,
Sorry for the delayed reply, this sounds great. I'll check out the
latest svn from sf.net tomorrow and give it a go. Thanks again for
looking into making these additions.
Also, I will be switching from Cable to FiOS (FINALLY) in the next
couple weeks. I don't anticipate much down time for the Development
Oracle DB, but if you have any connection problems let me know.
-Kevin
On Sun, 2007-01-07 at 00:07 -0500, John Siracusa wrote:
> On 12/27/06 3:22 PM, Kevin McGrath wrote:
> > Just wondering if there is a time line for some of these Oracle changes to
> > be implemented? The sequence addition would be very nice to have. I have a
> > kludge right now where I override the save function.
>
> This is pretty much working in SVN. No docs yet, but here's the short
> version...
>
> To get serial columns to work in Oracle, make your database column like
> this:
>
> id INT NOT NULL PRIMARY KEY
>
> (It doesn't have to be named "id". Any name will do. Also, probably any
> integer-ish data type will work.)
>
> Then create a sequence named like this:
>
> <table>_<column>_seq
>
> For example, if the table is named "t1" and the desired serial column is
> named "id", then create a sequence named "t1_id_seq"
>
> CREATE SEQUENCE rose_db_object_test_id_seq;
>
> Now create a trigger on insert for the table that sets the primary key
> column to the next value in the sequence:
>
> CREATE OR REPLACE TRIGGER t1_insert
> BEFORE INSERT ON t1 FOR EACH ROW
> BEGIN
> SELECT t1_id_seq.nextval INTO :new.id FROM dual;
> END;
>
> Finally, set up the RDBO column metadata as usual for a serial column:
>
> columns =>
> [
> id => { type => 'serial', primary_key => 1, not_null => 1 },
> ...
> ]
>
> You can override the auto-selected sequence name like this:
>
> columns =>
> [
> id => { type => 'serial', primary_key => 1, not_null => 1,
> sequence => 'some_other_seq' },
> ...
> ]
>
> Sync from SVN and give it a whirl. You'll need both the new Rose::DB and
> Rose::DB::Object for it to work. Docs to come, then (assuming no
> outstanding bugs) release by the end of January.
>
> -John
>
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys - and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Rose-db-object mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/rose-db-object
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Rose-db-object mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rose-db-object