【正文】
No 圖4 從外部數(shù)據(jù)庫(kù)獲取數(shù)據(jù)的接口程序流程 輸出數(shù)據(jù)表接口程序的實(shí)現(xiàn) 輸出數(shù)據(jù)表用來存儲(chǔ)推理機(jī)對(duì)表達(dá)式或模型的求解結(jié)果。因此,需要在推理機(jī)運(yùn)行之前,根據(jù)輸出數(shù)據(jù)表接口描述的定義,準(zhǔn)確地建立結(jié)果變量與打開數(shù)據(jù)表的記錄集對(duì)象之間以及記錄集對(duì)象與連接對(duì)象之間的鏈接關(guān)系,使得推理完成后,系統(tǒng)能夠正確地連接數(shù)據(jù)庫(kù)和打開數(shù)據(jù)表,將求解結(jié)果存入到數(shù)據(jù)表中。為此,定義如下數(shù)據(jù)結(jié)構(gòu):struct OutputDataBuffer//推理機(jī)將結(jié)果寫入該區(qū)域{ CString ConclVariableName;//推理完成以后,按變量名稱排序 _Varian_t DataValue;//可以存儲(chǔ)不同類型的數(shù)據(jù); struct OutputDataBuffer *pNextDataValue;}*pOutputDataBufferHead,*pOutputDataBufferTail;struct ConclVariableBuffer //結(jié)果變量緩沖區(qū){ CString VariableName; CString ConObjectName;//排序 可以減少連接數(shù)據(jù)庫(kù)的次數(shù) CString RecObjectName;//排序 可以減少打開記錄集的次數(shù) int nField;//字段序號(hào) struct OutputDataBuffer *pOutputDataBuffer;//指向輸出數(shù)據(jù)區(qū)的指針 struct ConclVariableBuffer *pNextVariableName;}*pConclVariableHead,*pConclVariableTail;struct ConnecObjectName //連接對(duì)象緩沖區(qū){ CString ObjectName; CString ConnectionString; struct ConnecObjectName *pNextConnecObjectName; }*pConnecObjectNameHead;struct RecObjectName //記錄集對(duì)象緩沖區(qū){ CString ObjectName;//記錄集對(duì)象名稱 CString RecString;//SQL語句字符串 struct RecObjectName *pRecObjectName; }*pRecObjectNamehead;程序?qū)崿F(xiàn)流程與圖4相類似,不同之處是:在初始化階段,不需要連接數(shù)據(jù)庫(kù)和打開數(shù)據(jù)表,將找出的結(jié)果變量與打開數(shù)據(jù)表的記錄集對(duì)象之間以及連接對(duì)象之間的對(duì)應(yīng)關(guān)系,存到上述結(jié)構(gòu)所定義的鏈表中。推理機(jī)在推理完成以后,通過指向結(jié)果變量緩沖區(qū)的頭指針獲得整個(gè)鏈表的入口,將結(jié)果數(shù)據(jù)存入輸出數(shù)據(jù)表中。 4 結(jié)束語本文開發(fā)的知識(shí)庫(kù)系統(tǒng)與外部數(shù)據(jù)源的接口作為生產(chǎn)成本管理知識(shí)庫(kù)系統(tǒng)開發(fā)工具的重要組成部分,目前正在兩個(gè)不同類型的企業(yè)進(jìn)行試運(yùn)行,已經(jīng)收到了比較好的效果。應(yīng)用實(shí)踐證明,該系統(tǒng)運(yùn)行穩(wěn)定可靠,接口描述定義格式簡(jiǎn)單實(shí)用。我們準(zhǔn)備將接口程序轉(zhuǎn)為ActiveX DLL 組件形式,便于在不同的知識(shí)庫(kù)系統(tǒng)中使用,以獲得更好的效果。參考文獻(xiàn)1 Eugene Olafsen等著, 王建華等譯. MFC Visual C++6編程技術(shù)內(nèi)幕. 機(jī)械工業(yè)出版社, 2000年版2 熊范綸等. 雄風(fēng)專家系統(tǒng)開發(fā)工具. 清華大學(xué)出飯社, 1999年版3 王永慶. 人工智能原理與方法. 西安交通大學(xué)出版社, 1998年版 The Study on Interface of a Knowledge Base System and External DataSource Ma Jinping Xing jun(Manangement Department QingDao University , 266071)Abstract This paper discussed describe definition and program implementation method on interface of a Knowledge Base System and External DataSource. Key words Knowledge Base System DataBase DataSource 344 / 8