有兩張表,分別是合同表和客戶業務表,合同表如下:
CREATE TABLE `jz_contect` (
`ctid` int(10) unsigned NOT NULL auto_increment,
`gbid` int(10) unsigned default NULL,
`tcid` int(10) unsigned default NULL,
`price` float default NULL,
`pricetype` int(11) default NULL,
`jfstdate` timestamp NULL default '0000-00-00 00:00:00',
`fftype` int(11) default NULL,
`contectstart` timestamp NULL default '0000-00-00 00:00:00',
`contectend` timestamp NULL default '0000-00-00 00:00:00',
客戶業務表如下:
CREATE TABLE `jz_gbmes` (
`g_id` int(10) unsigned NOT NULL auto_increment,
`remindtype` int(11) default NULL,
`ctid` int(10) unsigned default NULL,
`bstdate` timestamp NULL default CURRENT_TIMESTAMP,
`sdate` timestamp NULL default NULL,
`edate` timestamp NULL default NULL,
`bs_id` int(10) unsigned default NULL,
PRIMARY KEY (`g_id`),
KEY `FK2_jz_gbmes` (`ctid`),
CONSTRAINT `FK2_jz_gbmes` FOREIGN KEY (`ctid`) REFERENCES `jz_contect` (`ctid`) ON
DELETE CASCADE ON UPDATE CASCADE) ENGINE=InnoDB DEFAULT CHARSET=utf8;
工作流程為:先簽完合同,然後再設置客戶業務,根據合同的終止日期來生成客戶業務的記錄,一個合同可以有多個業務,現在當合同修改後,需要更新以前的客戶業務記錄,開始設置客戶業務的時候,都是一個業務記錄對應一個合同還好寫,可是現在當合同修改後,需要對多個業務記錄進行更新,並且因為業務的 remindtype可能會不同,這樣根據合同的終止日期來生成的sdate和edate就不同,怎樣循環寫入呢?