You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ddlutils-dev@db.apache.org by "Ate Douma (JIRA)" <ji...@apache.org> on 2007/08/21 22:40:32 UTC

[jira] Updated: (DDLUTILS-75) Add support for "On Delete" and "On Update" in schema XML for foreign keys

     [ https://issues.apache.org/jira/browse/DDLUTILS-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ate Douma updated DDLUTILS-75:
------------------------------

    Attachment: delete_cascade2.patch

I've attached a new patch file based on the previous patch provided by Guy Davis.
This patch is for the current trunk (r551445) and includes @onDelete handling for all supported database which do support foreign on delete rules.

Can someone please review this patch and if valid commit it to the trunk?
For Jetspeed-2, I'm currently replacing our torque based schema generation with ddlutils but we very much depend on delete cascade rules.
I've temporarily build a patched version of ddlutils-1.0 to use in the mean time, but it would be great if this long outstanding issue could be fixed!

Regards,

Ate

> Add support for "On Delete" and "On Update" in schema XML for foreign keys
> --------------------------------------------------------------------------
>
>                 Key: DDLUTILS-75
>                 URL: https://issues.apache.org/jira/browse/DDLUTILS-75
>             Project: DdlUtils
>          Issue Type: Improvement
>          Components: Core (No specific database)
>         Environment: Oracle 10g Express Edition
> Windows XP
> Java 1.5.0
> Ant 1.6.5
>            Reporter: Guy Davis
>            Assignee: Thomas Dudziak
>            Priority: Critical
>             Fix For: 1.1
>
>         Attachments: delete_cascade.patch, delete_cascade2.patch
>
>
> Currently, when dumping the schema from a live database to XML, the 'on delete' and 'on update' rules for foreign keys are ignored.  As shown in the DTD for database.dtd (below), the attributes onDelete and onUpdate should translate into "on delete cascade" for example in the target SQL.
> <!ELEMENT foreign-key (reference+)>
> <!ATTLIST foreign-key
>   foreignTable CDATA #REQUIRED
>   name CDATA #IMPLIED
>   onUpdate (cascade|setnull|restrict|none) "none"
>   onDelete (cascade|setnull|restrict|none) "none"
> >
>  
> If the dump (DatabaseToDdl) is modified to write these attributes out, then the schema load (DdlToDatabase) needs to handle them and set the correct behavior on the foreign key creation.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.