這個子係統要實現在同一個數據庫的三個不同的表中不同字段進行動態查詢。所以各數據庫組件的DatabaseName統一設置為mw,而具體的表名應該在程序運行時動態設計。子係統設計思想是:根據用戶選擇的combobox的內容來確定具體的表名。例如:用戶選擇“貨源”、“進書方式”、“到貨日期” 、“發貨依據”,則表名為“業務清單”;選擇“新書名”,則表名為“新書”;選擇“書名”則表名為“業務調撥”。程序設計時必須先置Table1.Active=False,當選擇了具體的表之後,在置Table1.Active=True。查詢按鈕的響應代碼編寫思路如下:
procedure TForm12.Button1Click(Sender: TObject);
begin
table1.Active:=false;
if combobox.Text='貨源' then//如果combobox.Text='貨源'
begin
table1.TableName:='業務清單';
table1.Active:=true;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select * from 業務清單');
query1.sql.Add('where 貨源=:value');
query1.Params【0】.AsString:=edit.Text;
query1.Open;
end
else if combobox.Text='新書名' then
begin
table1.TableName:='新書';
table1.Active:=true;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select * from 新書');
query1.sql.Add('where 進書方式=:value');
query1.Params【0】.AsString:=edit.Text;
query1.Open;
end;
3 結論
本係統的開發工具是Delphi6.0,這個優秀的麵向對象開發工具提供了豐富的可視化組件庫(VCL)和強大的數據庫引擎Borland Data Engineer(BDE)通過BDE很容易鏈接本地(Access, FoxPro)或遠程數據庫服務器上的數據庫(SQL Server,Oracle等等)。經過測試,係統運行穩定,功能完善,符合要求。
參考文獻
【1】張錦芳.係統分析和設計【M】.北京:北京航空航天大學出版社,1997.
【2】郭晶.Delphi 6編程指南【M】.北京:電子工業出版社,2002.