远程数据更新程序说明.doc_第1页
远程数据更新程序说明.doc_第2页
远程数据更新程序说明.doc_第3页
远程数据更新程序说明.doc_第4页
远程数据更新程序说明.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

远程数据更新程序说明说 明1. 远程更新程序操作说明使用到本地数据库服务器的部门有:汽车磅、火车磅、铁水磅、棒材成品称、线材成品称。本部份程序分为:本地数据库更新中心数据库和中心数据库更新本地数据库两种。中心数据库使用Oracle。1.1.1 本地数据库更新中心数据库本部份的主要功能是:将本地数据库的记录发布到中心数据库中,让使用中心数据库的用户能综合查询到数据。要发布的表主要是存储各地磅过磅记录的表。本部份中的本地数据库类型分为2种,一种是Oracle,另一种是SQL Server2000。其中汽车磅、铁水磅使用Oracle数据库,14火车磅房使用SQL Server2000。1.1.1 本地数据库为Oracle本地数据库为Oracle的有汽车磅、铁水磅。目前需定时更新中心数据库的表有:系统名表英文名表中文名使用部门中心数据库表名汽车衡称重系统TJL_MK_OPERATOR进厂表门岗TJL_MK_OPERATORTJL_MK_LEAVE离厂表TJL_MK_LEAVETJL_QC_HEAVY汽车重车表汽车磅房TJL_QC_HEAVYTJL_QC_EMPTY汽车空车表TJL_QC_EMPTYTJL_QC_PRINT汽车码单打印表TJL_QC_PRINT铁水衡称重系统TJL_TS_TSB重罐表铁水磅房TJL_TS_TSB注意:在本部份中,本地数据库中要发布的表名应和中心数据库接收表的表字段名必须相同。本部份更新的表可动态设置,如需要增加发布到中心数据库的表,请按下面的方法操作,否则不能顺利发布。数据库具体操作如下:1、 在各本地数据库内建一张表,记录每张要发布的表的增加和修改的时间,以及状态。(本表字段数为3个,第一个字段记录需发布表的ID号,第二字段为UPDATETIME,第三字段为STATE。字段类型参看下面的例子。)2、 新建一个触发器,用于要发布的表增加或修改记录时把操作时间和状态存储到步骤1新建的表中。3、 再建一张视图,将要发布的表与新增的表连接查询。4、 运行远程数据更新程序(RemoteDataUpdate.WFormRemoteDataUpdate.exe)5、 在程序中选择要发布的表6、 输入在2步中新建的视图名(要输入正确)7、 选择要发布的字段8、 选择需发布表在中心数据库对应的接收表的关键字段(此为重要,一定要正确选择,否则执行出错)。如TJL_QC_HEAVY,发布到中心数据库的表名也叫TJL_QC_HEAVY,本地数据库表中H_ID是它的关键字段,但中心数据库的表已没有H_ID,因此,在这步中,关键字段为H_STARTTIME和H_SECTOR。下面以TJL_QC_HEAVY为例: 新建表:(表的命名格式为:要发布的表名+” _UPDATE”)- Create tablecreate table TJL_QC_HEAVY_UPDATE( H_ID NUMBER(8), UPDATETIME DATE, STATE VARCHAR2(1)tablespace HSSA pctfree 10 initrans 1 maxtrans 255 storage ( initial 64K minextents 1 maxextents unlimited );- Add comments to the table comment on table TJL_QC_HEAVY_UPDATE is 汽车磅重车表详细更新情况表;- Add comments to the columns comment on column TJL_QC_HEAVY_UPDATE.H_ID is 汽车重车表ID;comment on column TJL_QC_HEAVY_UPDATE.UPDATETIME is 记录修改时间;comment on column TJL_QC_HEAVY_UPDATE.STATE is 记录状态:1表示新增的记录,2表示修改的记录; 新建视图:create or replace view vjl_qc_heavy_update asselect a.*,b.updatetime,b.state from TJL_QC_HEAVY a,TJL_QC_HEAVY_UPDATE b where a.h_id=b.h_id 新建触发器:create or replace trigger TRJL_QC_HEAVY_REMOTEUPDATE after insert or update on TJL_QC_HEAVY for each rowdeclare - local variables herebegin-当增加和修改汽车重车表时将最新的修改时间保存到 TJL_QC_HEAVY_UPDATE 表中。 case when inserting then insert into TJL_QC_HEAVY_UPDATE(H_ID,updatetime,STATE) values(:new.H_ID,sysdate,1); when updating then update TJL_QC_HEAVY_UPDATE set updatetime=sysdate where H_ID=:old.H_ID; end case;end TRJL_QC_HEAVY_REMOTEUPDATE;1.1.2本地数据库为SQL Server本地数据库为SQL Server的有14#火车磅。目前需定时更新中心数据库的表有:系统名表英文名表中文名使用部门中心数据库表名14#火车衡系统QuiteWeigh称重表14#火车磅房由于原表中没有记录计量点,而中心服务器又必须以计量点和过磅时间做过火车磅表的关键字段,因此额外增加一个计量点(JLD)的字段。数据库具体操作如下:1、 在要发布的表后面增加字段:计量点(JLD varchar(20)),每条记录增加或修改的时间(UPDATETIME datatime),以及状态(STATE int)。2、 增加两个触发器,用于要发布的表增加或修改记录时把操作时间和状态存储到表中以及在增加记录时把计量点存入表中(计量点字段值根据过磅点不同而不同)。3、 剩下的步骤同上面的1.1.1中的操作步骤48。 增加记录时触发器:CREATE trigger dbo.InsertUpdateDateon dbo.QuiteWeighfor insertas -新增记录时将操作时间写入表里,并写入状态为1(新增)begin declare time as datetime select time = qRecordtime from inserted update QuiteWeigh set jld=14#轨道衡,UpdateDate=getdate(),State=1 where qRecordtime=time -本处的JLD(计量点)因不同过磅点而不同end 修改记录时触发器:CREATE trigger dbo.ModifyUpdateDateon dbo.QuiteWeighfor updateas -修改QuiteWeigh表时更新本表UpdateDate字段为操作时的系统时间begin declare time as datetime select time = qRecordtime from inserted update QuiteWeigh set UpdateDate=getdate() where qRecordtime=timeend2. 中心数据库更新本地数据库本部份是将中心数据库中的基础资料信息同步到本地数据库中。需要同步的基础资料信息有:品种表、品名表、供货单位表、收货单位/运输车队表。本部份的程序要更新的表只有上面所列,不能动态设置,如果要增加,只能修改程序。具体表如下: DT_BASE_BREED品种表 TJL_BASE_VARIETY(Oracle) 需更新的字段:服务器表字段中文名oracle本地表字段SQL Server本地表字段BREEDIDIDVARIETY_ID无SPELL拼音码VARIETY_PINYINBREEDNAME品种VARIETY_NAMEREMARK备注REMARK DT_BASE_BREEDNAME品名表 TJL_BASE_GOODSNAME(Oracle), DT_BASE_BREEDNAME品名表 Books(SQL Server)服务器表字段中文名oracle本地表字段SQL Server本地表字段BREEDNAMEIDIDGOODS_ID无SPELL拼音码GOODS_PINYINBREEDNAM品名GOODS_NAMEbBookNameBREEDID品种名称VARIETY_NAME无IFSAMPLING是否取样GOODS_SAMPIFFRONTSAMPLING是否磅前取样GOODS_BSAMPIFNEEDCHECK是否需验收GOODS_ACCEPTANCEREMARK备注REMARKIFCOMFIRM是否需确认发货COL_1 DT_BASE_OFFERUNIT供货单位 TJL_BASE_SUPPLIERS(Oracle),DT_BASE_OFFERUNIT供货单位 Producer(SQL Server)服务器表字段中文名Oracle本地表字段SQL Server本地表字段OFFERUNITIDIDGOODS_ID无SPELL拼音码GOODS_PINYINUNITNAME供货单位名称GOODS_NAMEbproducernameREMARK备注REMARK无 DT_BASE_RECUNIT 收货单位(STATUSFLAG=0) TJL_BASE_CONSIGNEE(Oracle), DT_BASE_RECUNIT收货单位(STATUSFLAG=0) Accpecter (SQL Server)服务器表字段中文名Oracle本地表字段SQL Server本地表字段RECUNITIDIDCONSIGNEE_ID无SPELL拼音码CONSIGNEE_PINYINRECUNITNAME供货单位名称CONSIGNEE_NAMEbAccp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论