Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to configure OneToOne releationship between the primarykey and foreignkey?
    primarykey
    data
    text
    <p>I have two tables, one table has id primary key and another table key is foreign key. How to map the one to one relation between the these tables.Please advise.</p> <p>Table-1</p> <pre><code>date_id(PK) start_date end_date create_date modify_date </code></pre> <p>Table-2</p> <pre><code>product_id(PK) product_name productversion date_id(FK) </code></pre> <p>While configuring the OneToOne relationship mapping in Table-1 bean, </p> <pre><code>private int date_id; private ParoducttFeature paroductfeature; </code></pre> <p>getter/setter</p> <pre><code>@Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name="DATE_ID") public int getDate_id() { return date_id; } @OneToOne(fetch = FetchType.LAZY, mappedBy = "daterange", cascade = CascadeType.ALL) public ProductFeature getParoductfeature() { return productfeature; } public void setProductFeature(ProductFeature productfeature) { this.productfeature= productfeature; } </code></pre> <p>Another table-2 bean:</p> <pre><code>private DateRange daterange; @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name="date_id") public DateRange getDaterange() { return daterange; } /** * @param daterange the daterange to set */ public void setDaterange(DateRange daterange) { this.daterange = daterange; } </code></pre> <p>I'm getting an error can't insert null values. Please advise why is this inserting null values.</p> <p>Error stack Trace:</p> <pre><code>com.microsoft.sqlserver.jdbc.SQLServerException: Cannot insert the value NULL into column 'Date_id', table 'Test.dbo.ProductFeature'; column does not allow nulls. INSERT fails. com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(Unknown Source) com.microsoft.sqlserver.jdbc.TDSCommand.execute(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(Unknown Source) org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:133) org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAndExtract(IdentityGenerator.java:96) org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:58) org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2989) org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3501) org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:81) org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:393) org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:227) org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:207) org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:191) org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:321) org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:286) org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:192) org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java </code></pre> <p>Hibernate session code :</p> <pre><code>Session session = (Session) HibernateUtil.getSessionFactory().openSession(); dateRange.setStart_date(date1); dateRange.setEnd_date("12/31/2099"); dateRange.setCreate_date(date1); dateRange.setModify_date(date1); session.save(dateRange); productFeature.setproductname("stack"); productfeature.setproductversion("1.23"); session.save(productFeature); session.getTransaction().commit(); session.flush(); HibernateUtil.shutdown(); </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload