有2个表, CASE案件表, COOP协助表。
CREATE TABLE `casebase` (
`CasebaseID` int(11) NOT NULL auto_increment,
`Casename` varchar(100) default 'null',
`Casestyle` int(11) default '0',
`Casenumber` varchar(100) default 'null',
`Casesort` int(11) default '0',
`Casestart` varchar(100) default 'null',
`Caseend` varchar(100) default '0',
`Build` text,
`Consign` text,
`Invest` text,
`Principal` varchar(100) default NULL,
`Buildperson` varchar(100) default NULL,
`Buildtel` varchar(100) default NULL,
`Institution` int(11) default '0',
`Affairstyle` int(11) default '0',
`Area` varchar(100) default 'null',
`Buildspace` double default '0',
`Buildarea` double default '0',
`Cubagetarea` float default '0',
`Builddensity` double default '0',
`Casetenor` int(11) default '0',
`Checkupdate` varchar(100) default NULL,
`Totalmoney` double default '0',
`DesinmainTrue` varchar(100) default NULL,
`DesinmainRandom` varchar(100) default NULL,
`DesinmainDoc` int(11) default '0',
`ReTrue` varchar(100) default NULL,
`ReRandom` varchar(100) default NULL,
`ReDoc` int(11) default '0',
`FrameshapeTrue` varchar(100) default NULL,
`FrameshapeRandom` varchar(100) default NULL,
`FrameshapeDoc` int(11) default '0',
`Userid` int(11) default '0',
`bargainNumber` varchar(200) default 'null',
`bidDocName` text,
`bidDocSaveName` text,
`biddoc` varchar(30) default '0',
`type` varchar(20) default NULL,
`presidedepartment` int(11) default '0',
`layer` int(11) default '1',
`client` int(11) default '0',
`mytype` varchar(20) default 'null',
`biddocc` varchar(30) default '0',
`bidDocNamee` text,
`bidDocSaveNamee` text,
`danfu` int(11) NOT NULL default '0',
`pingshi` int(11) NOT NULL default '0',
`zhanshi` int(11) NOT NULL default '0',
`ywnumber` varchar(20) default NULL,
`rfarea` double default '0',
`dmshejiyuan` varchar(50) default NULL,
`dmsjyjxuser` varchar(50) default NULL,
`dmsjyjxusertel` varchar(50) default NULL,
`lxdate` varchar(20) default NULL,
`projectManager` varchar(100) default NULL,
`projectReceiver` varchar(100) default NULL,
`changeStatusDate` varchar(50) default NULL,
`status` varchar(50) default '44001',
PRIMARY KEY (`CasebaseID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE `casecoop` (
`CasecoopID` int(11) NOT NULL auto_increment,
`Coopcaseid` int(11) NOT NULL default '0',
`CustomerID` int(11) NOT NULL default '0',
`Sum` varchar(100) NOT NULL default '',
`Allot` varchar(100) NOT NULL default '',
`CasenumberID` int(11) NOT NULL default '0',
PRIMARY KEY (`CasecoopID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
2个表没有关联的, 大家看得到, 但是通过casecoop.Coopcaseid关联casebase.CasebaseID主键。
现在问题是, 我想插入一条记录到casebase表, 插入数据表之前没有分配casebaseID的吧?同时我要插入几条数据到casecoop表, 那我要怎样写插入语句呢?最好可以用hibernate实现, 谢谢了,各位大大, 不够分的再说, 除了分我没有别的可以表达感谢了……
CREATE TABLE `casebase` (
`CasebaseID` int(11) NOT NULL auto_increment,
`Casename` varchar(100) default 'null',
`Casestyle` int(11) default '0',
`Casenumber` varchar(100) default 'null',
`Casesort` int(11) default '0',
`Casestart` varchar(100) default 'null',
`Caseend` varchar(100) default '0',
`Build` text,
`Consign` text,
`Invest` text,
`Principal` varchar(100) default NULL,
`Buildperson` varchar(100) default NULL,
`Buildtel` varchar(100) default NULL,
`Institution` int(11) default '0',
`Affairstyle` int(11) default '0',
`Area` varchar(100) default 'null',
`Buildspace` double default '0',
`Buildarea` double default '0',
`Cubagetarea` float default '0',
`Builddensity` double default '0',
`Casetenor` int(11) default '0',
`Checkupdate` varchar(100) default NULL,
`Totalmoney` double default '0',
`DesinmainTrue` varchar(100) default NULL,
`DesinmainRandom` varchar(100) default NULL,
`DesinmainDoc` int(11) default '0',
`ReTrue` varchar(100) default NULL,
`ReRandom` varchar(100) default NULL,
`ReDoc` int(11) default '0',
`FrameshapeTrue` varchar(100) default NULL,
`FrameshapeRandom` varchar(100) default NULL,
`FrameshapeDoc` int(11) default '0',
`Userid` int(11) default '0',
`bargainNumber` varchar(200) default 'null',
`bidDocName` text,
`bidDocSaveName` text,
`biddoc` varchar(30) default '0',
`type` varchar(20) default NULL,
`presidedepartment` int(11) default '0',
`layer` int(11) default '1',
`client` int(11) default '0',
`mytype` varchar(20) default 'null',
`biddocc` varchar(30) default '0',
`bidDocNamee` text,
`bidDocSaveNamee` text,
`danfu` int(11) NOT NULL default '0',
`pingshi` int(11) NOT NULL default '0',
`zhanshi` int(11) NOT NULL default '0',
`ywnumber` varchar(20) default NULL,
`rfarea` double default '0',
`dmshejiyuan` varchar(50) default NULL,
`dmsjyjxuser` varchar(50) default NULL,
`dmsjyjxusertel` varchar(50) default NULL,
`lxdate` varchar(20) default NULL,
`projectManager` varchar(100) default NULL,
`projectReceiver` varchar(100) default NULL,
`changeStatusDate` varchar(50) default NULL,
`status` varchar(50) default '44001',
PRIMARY KEY (`CasebaseID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE `casecoop` (
`CasecoopID` int(11) NOT NULL auto_increment,
`Coopcaseid` int(11) NOT NULL default '0',
`CustomerID` int(11) NOT NULL default '0',
`Sum` varchar(100) NOT NULL default '',
`Allot` varchar(100) NOT NULL default '',
`CasenumberID` int(11) NOT NULL default '0',
PRIMARY KEY (`CasecoopID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
2个表没有关联的, 大家看得到, 但是通过casecoop.Coopcaseid关联casebase.CasebaseID主键。
现在问题是, 我想插入一条记录到casebase表, 插入数据表之前没有分配casebaseID的吧?同时我要插入几条数据到casecoop表, 那我要怎样写插入语句呢?最好可以用hibernate实现, 谢谢了,各位大大, 不够分的再说, 除了分我没有别的可以表达感谢了……
是的,插入前没有ID,你可以通过 LAST_INSERT_ID() 得到刚插入记录的ID
完了,在第二张表的插入语句里面把对应的ID换成@tmp_id即可。
hibernate的session.last_insert_id()???有这个方法的?
还是说是默认的存储过程?