db-torque-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Russell Simpkins" <RussellSimpk...@funnygarbage.com>
Subject RE: MSAccess - Relationship problem with autoincrement
Date Wed, 27 Aug 2003 13:56:39 GMT

Did you try setting the defaultIdMethod="native" when you set it to "none" it really means
"none".



-----Original Message-----
From: Brijesh Sood [mailto:brijesh_sood@intersolutions.stpn.soft.net]
Sent: Wednesday, August 27, 2003 7:52 AM
To: torque-user@db.apache.org; hps@intermeta.de
Subject: MSAccess - Relationship problem with autoincrement


Hi Everybody , need urgent help ,someone can get sometime & help me it would be very appreciated

I m using Torque-3.0.2 with Odbc and MsAccess as the database.
want to use MsAccess Autonumber as the primary key for all tables i have and this key would
be the part of relationship exists 
between different tables
,
In my database schema defined have two tables Projects , Segments
                                                                                 1:N   
there is one to many relationship between projects to segments table  projects---------->segments

Somehome i am able to configure torque properties file build.properties , torque.properties

created project DB Schema file  As Follow , I don't want to use IdGenerator service and its
not supported as i found with my DB
so i made defaultIdMethod as none, My db sql file generated containing primary key field with
integer type but i changed this to
autoincrement & created my tables with insert-sql command the table generated in msaccess
contains projectID in projects and segmentID
in segments table is autoincrement type , 


Original                             changed to >>>>>>>>>>
CREATE TABLE projects                            CREATE TABLE projects
(                                                {        
    projectID integer,                                projectID autoincrement,
    projectCode VARCHAR (128),                        projectCode VARCHAR (128),
    projectName VARCHAR (128),                        projectName VARCHAR (128),
    PRIMARY KEY(projectID)                            PRIMARY KEY(projectID)
);                                                );
 this changes i made to make create table with primary key autoincrement type 

now i wrote a sample application to test the relationship between this two tables
       
      Projects projects = new Projects ();
      projects.setProjectname("Addison ");
      projects.setProjectcode("Project");
      projects.save();
      
     Segments segments = new Segments ();
      segments.setSegmentname("segments ");
      segments.save();
 
     segments.setProjects(projects); // setting relationship

System.out.println("Project Primary key : "+projects.getProjectid());  ======>>>
Project Primary key : 0 

after checking the MsAccess db i find the Foriegn Key projectID  in the Segments table is
0 , i have tried to 
print the primarykey value of projectID from projects tables it showing 0 after the insertation
of record ,

I dont know why after insertation of record its not synching the primary key value with projectID
field which is autonumber field 
generated by MsAccess & i would be used for the relationship management between different
tables. where is the problem , how to
use MsAccess Autoincrement Fields as the primary .....
I have written everything in very details ,if  something is missing pls mail mee back i can
provide the whole thing , its very important for meto resolve this issue.
waiting for reply

Rgds
Brijesh Sood


<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<!DOCTYPE database SYSTEM  "c:/torque/dtd/database_3_0_1.dtd">
<database  name="redms"  defaultIdMethod="none">

  <table name="projects" description="Projects Table" >
    <column
      name="projectID"
      required="true"
      primaryKey="true"
      type="INTEGER"
      description="projectID"/>
    <column
      name="projectCode"
      required="true"
      type="VARCHAR"
      size="128"
      description="Project Code"/>

    <column
      name="projectName"
      required="true"
      type="VARCHAR"
      size="128"
      description="Project Name"/>
  </table>
  
  <!---Segment Table -->
  <table name="segment" description="Segment Table">
    <column
      name="segmentID"
      required="true"
      primaryKey="true"
      type="INTEGER"
      description="segmentID"/>
      
    <column
      name="segmentName"
      required="true"
      type="VARCHAR"
      size="128"
      description="Segment Name"/>

    <column
      name="projectID"
      required="true"
      type="INTEGER"
      description="Foreign Key GIS1 Projects Table"/>

    <foreign-key foreignTable="projects">
      <reference
        local="projectID"
        foreign="projectID"/>
    </foreign-key>
  </table>
</database>




---------------------------------------------------------------------
To unsubscribe, e-mail: torque-user-unsubscribe@db.apache.org
For additional commands, e-mail: torque-user-help@db.apache.org


Mime
View raw message