Patrick, Thanks for the quick response especially on a holiday.! I understood what you mean.I think I'll live with the 1st option you gave.
Deepak. Patrik Nordwall wrote: > > Hi Deepak, > > CASE2 is wrong way. > > You have two options. > 1) many-to-many join table. This is the default. > 2) foreign key column in ITEM. This is the result of inverse keyword. > > Alternative 2 is more efficient, but it introduces a dependency at the db > level from item to inventory, which is sometimes unwanted, especially when > inventory and item are in different modules. > > I don't think you can design this in the database in any other way. > > Below INVENTORY table will not be able reference several items for one > inventory. > CREATE TABLE INVENTORY ( > INVENTORY_ID NUMBER(20) NOT NULL, > ITEM_ID NUMBER(20) NOT NULL, > ) > > > /Patrik > > > > > > deepshar027 wrote: >> >> Hey Patrick, >> >> I am facing this problem. >> >> Consider this..similar like your example. >> >> Entity Inventory{ >> - List<@Item> items >> } >> Entity Item{ >> } >> >> This generates an additional table INVENTORY_ITEM which I dont want >> (many-2-many relationship.) >> I want to have unidiretional relationship(one-2-many) as only inventory >> can have items. >> >> Now If I do the following >> >> CASE:1 >> >> Entity Inventory{ >> - List<@Item> items inverse >> } >> >> I see a reference of INVENTORY in item table which is not expected. >> CREATE TABLE ITEM ( >> ITEM_ID NUMBER(20) NOT NULL, >> INVENTORY NUMBER(20) , >> ); >> >> What I want to have is just below and there should no reference of >> Inventory in Item table. >> >> CREATE TABLE INVENTORY ( >> INVENTORY_ID NUMBER(20) NOT NULL, >> ITEM_ID NUMBER(20) NOT NULL, >> ) >> >> CASE 2: >> >> I did the following(Not sure why but I read somewhere that inverse >> creates a reference in the child table) >> As such the following doesnt look correct to me but still I tried >> >> Entity Inventory{ >> } >> Entity Item{ >> - List<@Inventory> inv inverse >> } >> >> It does this which seems okk...although it creates this >> INV_INDEX(INTEGER) which I'll have to fix somehow to make NUMBER >> >> CREATE TABLE INVENTORY ( >> INVENTORY_ID NUMBER(20) NOT NULL, >> INV_INDEX INTEGER(10), >> ITEM NUMBER(20) >> ); >> >> This is fine so far....but in Item.hbm.xml I see >> <list name="inv"> >> <key column="ITEM"/> >> <index column="INV_INDEX"/> >> <one-to-many class="com.bookonz.inventory.domain.Inventory"/> >> </list> >> >> I am not sure if this is correct? Should Item.hbm hold a reference to >> Inventory? >> >> >> Please provide your inputs on this. >> >> Thanks, >> Deepak. >> >> > > -- View this message in context: http://www.nabble.com/-Sculptor--uni-directional-one-to-many-mapping--tp21445883s17564p23712640.html Sent from the Fornax-Platform mailing list archive at Nabble.com. ------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://www.creativitycat.com _______________________________________________ Fornax-developer mailing list Fornax-developer@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/fornax-developer