[ 
https://issues.apache.org/jira/browse/TORQUE-323?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14099337#comment-14099337
 ] 

Thomas Fox commented on TORQUE-323:
-----------------------------------

I cannot reproduce the described behaviour. I have run the torque test project 
version 4.0 against postgresql and (as expected as torque 4.0 was tested 
against postgresql on release) the generated sql file looks ok, without the ON 
UPDATE NONE ON DELETE NONE problem.
Then, I have checked the 4.0 xsd schema. It contains
  <xs:complexType name="foreignKeyType" >
    ....
    <xs:attribute name="onDelete" use="optional" type="cascadeType">
and
  <xs:simpleType name="cascadeType" >
    <xs:restriction base="xs:NMTOKEN">
      <xs:enumeration value="cascade" />
      <xs:enumeration value="setnull" />
      <xs:enumeration value="restrict" />
    </xs:restriction>
  </xs:simpleType>
So "none" is not even a valid value according to the schema. If I try to set it 
manually, e.g.
    <foreign-key foreignTable="author" onDelete="none" onUpdate="none">
the xml parser fails because the file is not schema-consistent,

Are you sure you are using the correct xsd version?
E.g. (again from the test project)
<database name="bookstore"
    defaultIdMethod="idbroker"
    xmlns="http://db.apache.org/torque/4.0/templates/database";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://db.apache.org/torque/4.0/templates/database 
        http://db.apache.org/torque/4.0/templates/database.xsd";>


> Error in schema.xml for cascade="none" with postgresql
> ------------------------------------------------------
>
>                 Key: TORQUE-323
>                 URL: https://issues.apache.org/jira/browse/TORQUE-323
>             Project: Torque
>          Issue Type: Bug
>    Affects Versions: 4.0
>         Environment: Postgresql 9.3.4 Java 8, on 64bit x86 Fedora.
>            Reporter: Martin Tilsted
>
> If you in your schema.xml have a
> <foreign-key onUpdate="none" ...>
> Then torque will generate the following in schema.sql: 
> ALTER TABLE book
>     ADD CONSTRAINT book_FK_1
>     FOREIGN KEY (keyref)
>     REFERENCES keyreftable (id)
>     ON UPDATE NONE
>     ON DELETE NONE;
> But postgresql don't accept the syntax "On update none" and "on delete none"
> It should be "on update no action" and "on delete no action" instead.
> Since onUpdate="none" is the default if no onUpdate value have been set in 
> schema.xml, this make it imposible to generate the database from the sql, 
> unless onUpdate and onDelete explicit have been specified to something other 
> then none on all foreign keys.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscr...@db.apache.org
For additional commands, e-mail: torque-dev-h...@db.apache.org

Reply via email to