① 地質取樣班報數字化面向對象開發及其應用
盛堰 吳廬山 廖開訓
第一作者簡介:盛堰,男,1973年生,工程師,主要從海洋地質調查工作,先後參加105⁃15大洋調查、天然氣水合物資源調查工作,參加了863、126、大洋課題等課題研究。
(廣州海洋地質調查局 廣州 510760)
摘要 海洋地質調查中,傳統的取樣班報記錄方式越來越不適應數字化技術的發展,本文就地質取樣班報數字化技術進行探討,並介紹了採用delphi語言開發的地質取樣數字班報系統的結構、功能特點、系統配置、操作方法及其在海洋地質調查中的應用。
關鍵詞 海洋地質調查 地質取樣班報 數字化 模塊 軟體開發
1 前言
隨著計算機信息技術的發展,海洋地質調查也步入了數字化的時代,地質調查野外資料採集設備隨著數字化的步伐日新月異,資料處理、資料歸檔都已經實現數字化,但是野外地質取樣原始資料採集環節中佔有重要地位的現場記錄班報卻在數字化的大潮中止步不前。
一直以來,傳統的海上野外資料採集班報都是使用紙質班報,手工記錄的工作方式。隨著數字化技術的發展手寫的紙質班報越來越顯示出其局限性,不僅現場記錄效率低,易出錯,不易保存,還會因資料管理環節分散,顯得比較混亂、煩瑣,容易造成野外原始資料的丟失,更重要的是手寫的模擬記錄難以很好地為數據後處理、成圖和資料解釋服務。
地質取樣數字班報系統是面向對象的可視化系統,符合現行調查規范,能快速准確地全面輸入和輸出現場地質調查數據信息,不僅使現場輸入更准確、更快速、更簡便,而且能有效地服務於進一步的解釋和研究工作,利用數字化技術的優勢,提高了地質樣品研究工作的效率和技術水平,有效地解決了海洋地質調查中海上地質取樣記錄班報的數字化問題,提高了野外數據採集的數字化水平,具有重要的實際意義和應用價值。軟體兼容性好,性能穩定,界面友好,操作簡便,功能完善,已經在「海洋四號」科學考察船的DY105⁃15航次大洋調查、南海天然氣水合物調查等大型項目中使用,效果良好。
2 系統的總體結構
2.1 系統總體結構模塊圖
系統包括「導航數據導入」、「數據錄入」、「數碼圖片調用」、「數據查詢與統計」、「數據導出」、「成果列印」、「公共信息管理」、「系統信息維護」、「幫助」等九個主要功能模塊。軟體採用可視化操作,界面友好(見圖1)。
圖1 系統總體結構模塊圖
Fig.1 System construction mole chart
各模塊既相對獨立,又密切聯系,所有數據都由後台資料庫進行統一管理(馬恆,1999)。研究內容主要包括:位置、時間數據獲取;圖像數據傳輸處理;樣品數字化圖像的截取和導入;數據錄入、樣品描述可視化輸入;數據查詢方法及優化;數據導出與導入處理;格式化報表輸出與列印;數據的網路共享與系統集成等。
2.2 系統流程圖
數字班報系統操作流程圖(圖2)。
3 系統的特徵及主要功能
3.1 系統特點
基於Windows xp操作系統平台開發,可兼容Windows98/2000/2003Server操作系統,採用Delphi 開發(賽奎春等,2004),後台資料庫為 sql Server 關系型資料庫(Ron Soukup,2001),使用SQL結構化查詢語言進行數據查詢與管理,班報列印報表利用RAVE報表生成技術,並編程實現圖片實時拍攝硬體介面技術。系統資料庫採用多層安全性,登錄安全認證直接集成到操作系統的登錄安全中,啟動操作系統後資料庫自動運行,不需要再手動登錄資料庫。使用用戶界面友好,操作簡單,使用方便。系統強調和用戶的交互,預留功能介面便於系統的後續開發。
圖2 系統流程框圖
Fig.2 Flow chart of system
3.2 系統的主要功能
3.2.1 站位數據錄入
每個地質取樣站位都要生產一頁新的班報,如何快速、簡便、准確無誤的錄入班報原始數據,是整個數字班報系統的重要組成部分。數據錄入包括公共信息錄入和站位信息錄入,其中公共信息包括:用戶信息(如用戶的增加、刪除、密碼更改、各個用戶的許可權設置等),通用信息(如顏色、氣象海況、調查船、航次、ISO編號、定位儀器設置等,這些信息在所有類型的數字班報中都是通用的,他們的更改將影響全部班報頁的可選項)。站位信息錄入是數據錄入的重點(見圖3)。
在該界面中,頂端為工具按鈕條,工具按鈕條中包含增加、編輯、刪除、保存、取消、最前、前頁、後頁、最後、查找、列印、導出、關閉等13個按鈕,點擊相應的按鈕就可以執行其對應的功能。
在海洋地質班報數據錄入時,所有數據輸入都是「所見即所得」的可視化交互方式(圖3為南海水合物項目中某站位的班報數據),有些數據不用手動輸入,直接用滑鼠點擊輸入框旁邊的下拉箭頭,從提供的選擇項中選擇即可,如上圖中的「調查船」、「採用工具」、「定位儀器」、「地形特徵」等。其中日期的輸入直接點擊頂部的時間下拉箭頭,會出現一個系統日歷,點擊裡面的日期就會自動輸入到班報中,並自動計算出對應的儒略歷。所有數據輸入都支持復制(快捷鍵:ctrl+c)和粘貼功能(快捷鍵:ctrl+v)功能,即新班報中的內容可從其他班報中復製得到或將班報內容復制到其他文檔中。
圖3 地質取樣班報錄入主界面
Fig.3 Main input interface of geological sampling log
3.2.2 導航定位數據提取
在站位原始數據輸入過程中,導航定位數據的輸入是最需要細心的,因為站位定位數據精度高,輸入時很容易出錯,在數字班報中導航定位數據可直接從導航原始數據中智能讀取,有效地克服了人為的錯誤,既准確又快速。在圖3界面中點擊「時間經緯度提取」按鈕即可進入導航定位數據提取界面(見圖4)。
圖4 導航經緯度、時間數據提取界面
Fig.4 Long.,Lat.and time get interface
站位導航定位數據提取是利用網路技術,通過網路共享直接調用原始的導航定位文件,對文件記錄的數據進行解編得到的,數據非常准確。具體操作步驟為:點擊「打開文件」按鈕,打開網上鄰居中導航定位原始記錄文件,原始記錄文件的內容將自動顯示出來,根據站位下水、到底的時間用滑鼠點擊相應的行,解編出來的時間和經緯度數據自動顯示在下面對應的空白框中,先用滑鼠選擇要提取的內容(時間或經緯度),再點擊「提取」按鈕,就自動將對應的數據提取到當前班報頁中。在經緯度提取和顯示的時候,可以根據需要選擇經緯度的顯示和記錄格式:「度」,「度分」或「度分秒」。
3.2.3 站位數據資料查詢
站位數據錄入後,在後處理、質量控制、錯誤修改等很多情況下都需要對班報數據進行查詢,地質取樣數字班報系統提供方便的查詢功能。在圖3所示的界面中點擊「查找」按鈕即可進入查詢界面(見圖5)。
查詢界面中頂部是操作按鈕,中上部分是查詢條件,下面的表格顯示查詢結果,輸入或選擇你的查詢條件後按頂部的「查詢」按鈕即可在下面的空白表中列出滿足條件的站位。查詢條件可以是單個或多個。例如:在日期區間中選擇2004年1月1日至2004年12月30日在調查船框中輸入「海洋四號」,在采樣工具中選擇「PC」,其它條件空,按「查詢」按鈕,就可以在列表框中看到「海洋四號」船在2004年採集的所有大型重力活塞站位,最下面的狀態欄中顯示有滿足條件的站位總數。也可以精確查找某個站位,如:在「站位名」框中輸入「HD315PC」,然後按「查詢」按鈕,就可在資料庫中查詢出「HD315PC」站位;除此之外,還支持模糊查詢,在查詢條件中如果輸入的是模糊信息,則查詢結果就是滿足查詢條件的所有站位,如:在「站位名」框中輸入「H」則可查詢到所有站位名以H開頭的站位。
圖5 數據查詢主界面
Fig.5 Data query interface
要看查詢站位的具體內容,只需用滑鼠點擊查詢界面下部表中該站位所在的行,在主輸入界面中立即就顯示出了所選站位的詳細資料,如圖5中用滑鼠點擊「HD350PC」所在的行,則對應的主界面(圖3)中就立即顯示「HD350PC」站位的詳細內容。
3.2.4 站位數據資料導出
數字班報系統具有友好的數據智能導出功能,在圖3 所示的班報輸入主界面中點擊「導出」按鈕,即可進入數據導出界面(見圖6)。
數據智能導出功能可以將海洋地質數字班報中滿足條件的站位數據提取出來,供後續資料統計,數據處理,以及供Sufer、AutoCAD等成圖軟體使用,在導出界面中分為工具按鈕、選擇條件、導出內容、導出格式等幾個部分組成,「選擇條件」的輸入方法和查詢界面中的輸入方法一樣;在「導出內容」部分可以根據需要選擇要導出的內容(如:到底時間,到底經緯度,水深等),選擇時只需用滑鼠在相應內容前面的「選擇框」中點擊打勾就可以了;選擇需要導出的文件格式,excel或txt格式。選擇條件、導出內容及導出文件格式選定後,點擊「預覽」按鈕就可以在下面的空白列表中,預覽導出的具體內容,確定無誤後用滑鼠點擊「導出」按鈕,就可以將符合條件的站位中你需要的內容導出保存成Excel格式文件或txt格式文件。
圖6 數據導出界面
Fig.6 Data export interface
3.2.5 實時數碼圖片截取和載入
值得一提的是,地質取樣數字班報系統支持視頻實時圖片截取,支持數碼圖片載入功能,既可以載入數碼相機拍攝的數碼照片,也可以載入導航計算機採集的站位航跡圖,這是傳統班報無法比擬的。
截取的圖片可以保存為bmp格式的圖片,在截取時必須安裝視頻硬體(如:攝像頭等),實際應用較少,這里不再詳細介紹。載入的數碼圖片可以是bmp格式或jpg格式,如圖7中要導入MP5D38站位的數碼圖片,在主界面的下方點擊「站位照片」選單,在界面中用滑鼠點擊「載入」按鈕,將彈出「圖片文件對話框」,找到對應的數碼照片文件並確定,就可以將該站位的數碼圖片導入到班報中。航跡圖的載入和數碼照片的導入方法一樣,不同的是航跡圖是由導航計算機截取該站位的航跡得到,在載入前必須先在導航計算機中截取航跡圖。導入的數碼照片和航跡圖後可以保存到該站位的班報資料中。
圖7 數碼圖片調用(左:站位數碼圖,右:站位航跡圖)
Fig.7 Digital picture Load interface(L:digital picture of station,R:navigation track)
4 系統分析及實現
系統開發使用原型法(Rapid Prototyping)即以少量代價快速地構造一個可執行的軟體系統模型;系統採用客戶/伺服器兩層模型(Client/Server)開發面向對象的資料庫應用軟體。
數據查詢使用結構化查詢語言(Structured Query Language,簡稱SQL),基本格式為:
SELECT[DISTINCT]<columns to be chosen,optionally eliminating plicate rows from result set>
[FROM]<table names>
[JION]<if multiple tables,declare how they relate to each other >
[WHERE]<criteria that must be true for a row to be each other>
[GROUP BY]<columns for grouping aggregate functions>
[HAVING]<criteria that must be met for aggregate functions >
在程序中採用異常處理機制,保證了軟體的正常運行。
5 結論與建議
地質取樣數字班報系統直接從導航系統提取站位坐標,使班報中站位的經緯度更加准確無誤;方便的數據查詢和數據導出功能可以很好的為數據後處理、成圖和資料解釋服務,工作效率也大大提高;站位數碼圖片和航跡圖的載入使班報記錄的內容更加豐富,具有傳統班報無法比擬的優越性。地質取樣數字班報系統解決了海洋地質調查中地質取樣班報的數字化問題,使傳統的野外地質取樣班報記錄朝數字化方向邁出了堅實的步伐,也將對野外採集環節班報記錄數字化產生較大的促進作用。建議在今後的使用中不斷改進和完善,使其更好地為海洋地質調查服務。
主要參考文獻
廣州海洋地質調查局ISO9001技術規范
國家技術監督局.1993.海洋調查規范.海洋地質地球物理調查(GB/T 13909⁃92)
馬恆.1999.關系資料庫理論.北京:清華大學出版社
賽奎春,陳紫鴻等.2004.Delphi資料庫開發關鍵技術與實例應用.北京:人民郵電出版社
施伯樂.1997.高級程序員軟體知識.北京:清華大學出版社
Ron Soukup著,姜鴻英等譯.2001.SQL Server 7.0技術內幕.北京:清華大學出版社
Steve Teixera,Xavier Pacheco著,徐新華等譯.2000.Delphi 6.0開發大全.北京:人民郵電出版社
Object Oriented Development and Application for Digital Geological Sampling Log
Sheng Yan Wu Lushan Liao Kaixun
(Guangzhou Marine Geological Survey,Guangzhou,510760)
Abstract:The digital technology has been more and more applied in the field of marine geological survey,the digitized geological sampling logs are needed in most of survey subjects.It is discussed the digital technology application of geological sampling log in this paper.A software for digital geological sampling log has been developed by Delphi,and the structure,function,specialty,operation method of this software are introced.Satisfactory results of application of this digitized geological sampling log are received in the field survey work.
Key words:marine geological survey geological sampling log digital,mole the development of software
② 怎麼用delphi7 編寫資料庫程序
在delphi中有一批資料庫專用的控制項,比如ADO類的,可以直接用於資料庫開發,你可以先用一個Access資料庫自己進行一下測試。
首先在窗體上放一個ADOConnection1控制,用於與Access資料庫進行連接,連接字元串為:
ADOConnection1.ADOC_Data.ConnectionString:='provider=Microsoft.Jet.OLEDB.4.0;'
+'user ID=Admin;'
//+'Data Source='+ExtractFilePath(Application.ExeName)+'MyRecord.mdb;'
+'Data Source='+MyDataBaseName+';'
+'Mode=Share Deny None;Extended Properties="";'
+'Jet OLEDB:System database="";'
+'Jet OLEDB:Registry Path="";'
+'Jet OLEDB:Database Password="123456;' //資料庫密碼
+'Jet OLEDB:Engine Type=5;'
+'Jet OLEDB:Database Locking Mode=1;'
+'Jet OLEDB:Global Partial Bulk Ops=2;'
+'Jet OLEDB:Global Bulk Transactions=1;'
+'Jet OLEDB:New Database Password="";'
+'Jet OLEDB:Create System Database=False;'
+'Jet OLEDB:Encrypt Database=False;'
+'Jet OLEDB:Don'+''''+'t Copy Locale on Compact=False;'
+'Jet OLEDB:Compact Without Replica Repair=False;'
+'Jet OLEDB:SFP=False';
DM.ADOC_Data.LoginPrompt:=False;
再放一個ADOQuery1控制,用於操作數據表,將它的Connection屬性設置為ADOConnection1。或用語句實現:ADOQuery1.Connection:=ADOConnection1;
然後再分別放置一個DataSource1和一個DBGrid1控制項,
將DataSource1的DataSet屬性設置為ADOQuery1。
將DBGrid1的DataSource屬性設置為DataSource1。
這時就可以通過ADOQuery1來執行SQL語句來查詢數據表,並通過DBGrid1顯示出來了。
③ delphi新手,尋求delphi操作資料庫實例,各位分享下 謝謝
LZ看看這里是不是你想要的。網上找的。希望對你有所幫助
Delphi,是Windows平台下著名的快速應用程序開發工具(Rapid Application Development,簡稱RAD)。它的前身,即是DOS時代盛行一時的「BorlandTurbo Pascal」,最早的版本由美國Borland(寶蘭)公司於1995年開發。主創者為Anders Hejlsberg。經過數年的發展,此產品也轉移至Embarcadero公司旗下。Delphi是一個集成開發環境(IDE),使用的核心是由傳統Pascal語言發展而來的Object Pascal,以圖形用戶界面為開發環境,透過IDE、VCL工具與編譯器,配合連結資料庫的功能,構成一個以面向對象程序設計為中心的應用程序開發工具。
參考資料:http://xueshu..com/s?wd=delphi操作資料庫實例&tn=SE_xueshu_c1gjeupa&ie=utf-8&sc_hit=1
④ Delphi資料庫系統開發完全手冊的內容簡介
本書分三大部分,第一部分為Delphi編程篇,主要介紹使用Delphi開發資料庫系統必須掌握的技術,這些技術最大限度地與實際項目案例相結合。第二部分為SQL Server應用篇,主要介紹SQL Server資料庫安裝、管理、開發及維護的相關技術。第三部分為實例開發篇,精選了當前應用最廣泛的資料庫管理系統,內容包括定製自己的工作環境、物流配送管理系統、倉庫管理系統、銷售管理系統、工資管理系統、人事管理系統、客戶管理系統、固定資產管理系統和財務憑證管理系統。這些系統即可以獨立使用,也可作為企業綜合管理系統的重要組成部分。本書附有配套光碟。光碟提供了書中所有案例的全部源代碼,所有源代碼都經過精心調試,在Windows XP和Windows 2000下全部測試通過,保證能夠正常運行。本書內容精練、重點突出、實例豐富,是各級程序開發人員必備的和不可多得的參考書,本書也非常適合大中專院校師生學習參考。 圖書目錄 實例開發篇第15章定製自己的工作環境25315.1代碼編輯器常規選項設置25315.2代碼編輯器源文件選項設置25515.3代碼編輯器顯示狀態設置26115.4語法著色26215.5代碼智能選項設置26415.6環境選項參數設置26515.7窗體和組件設置26715.8個性化開發環境設置268第16章Delphi 7在物流配送中的應用27116.1物流配送管理系統概述27116.1.1開發背景27116.1.2運行環境27116.2系統調查27116.2.1手工流程27116.2.2需求分析27216.3系統分析27216.3.1系統功能27216.3.2業務流程27316.4資料庫設計27316.4.1資料庫概念設計27316.4.2資料庫邏輯結構設計27316.5處理過程分析27716.5.1配送審核處理過程分析27716.5.2配送開票處理過程分析27716.6主程序設計27816.6.1實現目標27816.6.2建立主窗體27916.6.3程序相關代碼28016.7數據模塊設計28116.8程序設計與編碼28216.8.1配送申請管理設計28216.8.2配送審核管理設計28816.8.3配送開票管理設計29116.8.4配送查詢管理設計29616.8.5系統登錄程序設計29816.9疑難問題分析解決30016.9.1如何在TImageList中存儲大圖標30016.9.2如何實現動態查詢30116.9.3如何去除重復行30116.9.4動態創建窗體30216.9.5如何實現配送開票查詢30316.9.6如何將表格中某些列設置為只讀30416.10程序調試及錯誤處理30516.10.1程序調試30516.10.2異常處理30716.11程序設計清單30816.12技術、經驗總結30816.12.1技術總結30816.12.2經驗總結30916.13程序的打包與發行309第17章Delphi 7在倉庫中的應用31217.1倉庫管理系統概述31217.1.1倉庫管理系統簡介31217.1.2系統功能描述31217.2系統調查31317.3需求分析31317.4系統設計31417.4.1系統流程圖31417.4.2業務流程31517.5資料庫設計31517.5.1資料庫概念設計31517.5.2資料庫邏輯結構設計31517.5.3數據字典31717.6處理過程分析31717.6.1商品入庫處理過程分析31717.6.2商品出庫處理過程分析31817.7主窗體設計31817.8數據模塊設計31917.9程序設計與編碼31917.9.1商品入庫管理設計31917.9.2商品出庫管理設計32617.9.3商品庫存查詢設計32817.10疑難問題分析解決32917.10.1使用TADODataSet組件時應該注意的問題32917.10.2雙擊DBGrid表格,如何顯示當條數據詳細信息33017.10.3如何判斷資料庫中是否有相同欄位的數據33117.10.4判斷進價、批發價、零售價是否輸入合法33217.11程序測試常見錯誤解決33217.12程序設計清單33517.13技術、經驗總結33617.13.1技術總結33617.13.2經驗總結336第18章Delphi在銷售中的應用33718.1銷售管理系統概述33718.1.1開發背景33718.1.2銷售管理系統簡介33718.1.3系統功能描述33718.2系統分析33818.2.1系統規劃33818.2.2系統流程圖33918.2.3業務流程33918.3資料庫設計33918.3.1資料庫概念設計33918.3.2資料庫邏輯結構設計34018.4主窗體設計34118.5狀態欄設計34218.6數據模塊設計34318.7銷售報表設計34318.8程序設計與編碼34618.8.1商品銷售管理設計34618.8.2銷售退貨管理設計35218.8.3客戶訂貨管理設計35518.8.4銷售查詢管理設計35818.9疑難問題分析解決36018.9.1如何防止單擊TBitBtn按鈕時關閉模式窗體36018.9.2使用非數據控制組件顯示和瀏覽數據36118.9.3在編輯框中只允許輸入數字36118.9.4按Enter鍵控制焦點的移動36118.9.5在銷售商品時,實現訂單銷售36218.9.6如何實現超期應收款查詢36218.10程序設計清單36218.11技術、經驗總結36318.11.1技術總結36318.11.2經驗總結36418.12系統的編譯與發行364第19章Delphi在工資中的應用36519.1工資管理系統概述36519.1.1系統任務36519.1.2設計目標36519.2需求分析36519.2.1業務調查36519.2.2系統規劃36619.3資料庫設計36619.3.1資料庫概念設計36619.3.2資料庫邏輯結構設計36719.3.3數據字典36819.4處理過程分析36919.4.1工資發放處理過程分析36919.4.2工資調整處理過程分析36919.5主窗體設計36919.6菜單設計37019.7數據模塊設計37119.8窗體模板設計37119.9程序設計與編碼37219.9.1員工基本工資管理設計37219.9.2員工浮動工資管理設計37719.9.3工資發放管理設計37919.9.4員工工資調整管理設計38219.10疑難問題分析解決38619.10.1使用TRVSystem組件編寫報表38619.10.2如何控製表格中焦點的移動38719.10.3編寫簡潔、靈活的代碼38719.10.4如何限製表格中某列的輸入38819.10.5員工工資核算38819.10.6查詢上月余額38919.11軟體測試38919.12程序設計清單39019.13技術、經驗總結39019.13.1創建視圖39019.13.2經驗總結392第20章Delphi在人事中的應用39320.1人事管理系統概述39320.1.1開發背景及意義39320.1.2系統目標39320.2系統分析39320.2.1系統規劃39320.2.2系統流程圖39520.3資料庫設計39520.3.1資料庫概念設計39520.3.2資料庫邏輯結構設計39520.4處理過程分析39620.4.1人員檔案處理過程分析39620.4.2人員調動處理過程分析39720.5主窗體設計39720.6數據模塊設計39820.7程序設計與編碼39820.7.1員工信息管理設計39820.7.2添加人員檔案程序設計39920.7.3修改人員檔案程序設計40220.7.4刪除人員檔案管理設計40720.7.5員工調動管理設計40820.8疑難問題分析解決0.8.1如何將數據表中的欄位值添加到下拉列表框中0.8.2如何防止用戶改變下拉列表框中的當前數據41220.8.3隱藏窗體的標題欄41320.8.4保存的實現方法探究41320.8.5圖片的切換41420.8.6控制按鈕是否可用41420.9程序調試與錯誤處理41520.10程序設計清單41620.11技術、經驗總結41720.11.1技術總結41720.11.2經驗總結41820.12程序的編譯與發行418第21章Delphi在客戶中的應用41921.1客戶管理系統概述41921.1.1客戶管理系統簡介41921.1.2系統功能描述41921.2系統分析41921.2.1系統規劃41921.2.2系統流程圖42121.2.3業務流程42121.3資料庫設計42121.3.1資料庫概念設計42221.3.2資料庫邏輯結構設計42221.4處理過程分析42321.4.1客戶基礎信息處理過程分析42321.4.2客戶信息呼叫處理過程分析42421.5主窗體設計42421.6菜單設計42621.7工具欄設計42721.8數據模塊設計42821.9程序設計與編碼42921.9.1客戶區域管理程序設計42921.9.2客戶級別管理程序設計43421.9.3客戶基礎信息管理程序設計43721.9.4客戶信息呼叫管理程序設計44321.9.5客戶反饋查詢管理程序設計44821.10疑難問題分析解決45121.10.1如何將TDBGrid中的內容居中顯示45121.10.2如何更改滑鼠指針形狀45221.10.3如何在控制項失去焦點時進行內容檢查45221.10.4如何防止向數據表中插入重復數據45221.10.5在表格中輸入商品數量,如何自動計算金額45321.10.6利用掩碼編輯控制項格式化字元串45321.11程序調試及錯誤處理45421.12程序設計清單45721.13技術、經驗總結45721.13.1技術總結45721.13.2經驗總結458第22章Delphi在固定資產中的應用45922.1固定資產管理系統概述45922.1.1開發背景及意義45922.1.2系統目標45922.2系統分析46022.2.1系統規劃46022.2.2系統流程圖46022.2.3業務流程46122.3資料庫設計46122.3.1資料庫概念設計46122.3.2資料庫邏輯結構設計46122.3.3數據字典46222.4處理過程分析46322.4.1添加固定資產處理過程分析46322.4.2計提折舊處理過程分析46322.5主窗體設計46322.6圖像列表設計46422.7數據模塊設計46522.8程序設計與編碼46622.8.1資產類別程序設計46622.8.2添加固定資產程序設計46722.8.3修改固定資產程序設計47122.8.4計提折舊程序設計47422.8.5數據備份程序設計47822.8.6系統初始化程序設計47922.9疑難問題分析解決48022.9.1如何創建存儲過程48022.9.2數據還原的實現48122.9.3查看SQL Server的備份文件48122.9.4利用循環語句清空界面數據48222.9.5固定資產基本概念48222.9.6固定資產計算公式48322.10程序測試48322.11程序設計清單48422.12技術、經驗總結48522.12.1技術總結48522.12.2經驗總結48622.13系統的編譯與發行486第23章Delphi在財務憑證管理系統中的應用487
⑤ 請提供一個簡單的DELPHI查詢資料庫的實例,包括所有操作
1、在窗體上放一個adoquery(adoquery1),datasource(默認為datasource1);
2、在窗體上放一個adoconnection1,也可以不放;
3、設置adoconnection1的connetionstring,提供程序選擇「"或者「OracleProviderforOLEDB",下一步,在伺服器名稱中輸入你的oracleSID(需事選配置SID)或者直接輸入SID配置信息。用戶名稱都是TEST.
3、設置Adoquery1的connetion屬性為adoconnection1,如果沒用adoconnetion,也可以設置adoquery1的connetionstring屬性(具體操作和adoconnection1一樣),設置Datasource1的DataSet屬性為Adoquery1,設置dbgrid(不是GBDRID)的datasource屬性為datasource1;
4、雙擊button1,寫代碼
Adoquery1.Close;
ADOQuery1.SQL.Text:='select*fromBIAOwhereA='+quotedstr(Trim(Edit1.text));
Adoquery1.Open;
⑥ delphi 7.0中做一個學生信息管理系統 如何製作列印預覽包表呢本人菜鳥求大神指點!!
學校學生管理信息系統的簡介
學校學生管理信息系統是針對學校人事處的大量業務處理工作而開發的管理軟體,是典型的管理信息系統(Management Information System)。它是一個教育單位不可缺少的部分,它的內容對於學校的決策者和管理者來說都至關重要,它能夠為用戶提供充足的信息和快捷的查詢手段。能有效的幫助學校和老師掌握學生的情況,為學生提供成績跟課程方面的查詢。功能基本符合根據張波爾老師的要求。
學生用戶通過輸入學生基本信息、課程基本信息等,由系統自行生成相應的數據以供學生查詢,另外人事處的管理用戶還可以對這些基本信息進行更新和刪除, 學校學生管理信息系統力求給用戶方便快捷的途徑去管理這些繁瑣的數據。
具體系統功能需求描述如下:
(1) 學籍信息管理
每年的大量新生入學,老生畢業都需要處理大量的學生信息。通過這一模塊,可以實現學生基本情況的添加、刪除、更新。還能查詢各個學生的情況,姓名、家庭電話、家庭住址、學號等各個消息
(2) 班級信息管理
實現班級的添加、刪除、更新。查詢班級的所在系別,輔導員等。
(3)課程信息管理
每個學期都會增加一些新的科目,通過本模塊可以輕松的添加以及更新課程。可以根據
學期條件或者班級條件的選擇,也可根據課程名、課程號或者班級的選擇,並對值的輸入,可以看到數據集中顯示符合條件的課程數據信息,而且可以根據教工的修改要求進行數據的添加、刪除、修改的操作。
該項管理對課程的屬性進行了具體化的分類,比如可以分辨是考試科還是考察課,而且根據條件的選擇大大得提高了對各學期課程數據的記錄操作,很大得幫助了教工們工作效率的提高。
(4)成績信息管理
本模塊實現了成績的輸入、刪除、更新。還能查詢到平均成績以及單科最高最低成績以及個人成績。把成績統計這個繁瑣的工作簡單化,為學生成績的管理方面提高工作效率。
(5)系統管理
因為本系統是供多人一起使用的,必須對某一些人進行限制。於是設置了管理員,非管理員只能進行查詢操作,不能進行更改。
三、學校學生管理信息系統的分析和設計
(1)開發環境的簡介
設計平台: DELPHI6.0
Delphi是一個對象導向設計的應用程序語言,是開發資料庫前端的優秀工具,它的編程語言簡潔明快、組件功能強大和編程環境靈活方便。採用Delphi來開發資料庫應用程序具有更大的靈活性和可擴展性。
資料庫: Microsoft Access
Access 是關系資料庫開發工具,資料庫能匯集各種信息以供查詢、存儲和檢索。Access 的優點在於它能使用數據表示圖或自定義窗體收集信息。數據表示圖提供了一種類似於 Excel 的電子表格,可以使資料庫一目瞭然。另外,Access 允許創建自定義報表用於列印或輸出資料庫中的信息。Access也提供了數據存儲庫,可以使用桌面資料庫文件把資料庫文件置於網路文件伺服器,與其他網路用戶共享資料庫。Access 是一種關系資料庫工具,關系資料庫是已開發的最通用的資料庫之一。Access 多用於中小型企業來設計中小型資料庫,一般的學校教務系統的資料庫用Access 來設計完全能達到要求。由於考慮到本系統是應用在單機系統上,只建立起一個資料庫。
資料庫訪問方式:ADO
ADO(Active Data Objects)實際是一種提供訪問各種數據類型 的連接機制。ADO設計為一種極簡單的格式,通過ODBC的方法同資料庫介面。可以使用任何一種ODBC數據源,即不止適合於SQL Server、Oracle、Access 等資料庫應用程序,也適合於Excel表格、文本文件、圖形文件和無格式的數據文件。ADO是基於OLE-DB之上的技術,因此ADO通過其內部的屬性和方法提供統一的數據訪問介面方法。其主要優點是易於使用、高速度、低內存支出和佔用磁碟空間較少。
(2)學校學生管理信息系統資料庫設計
由於考慮到本系統是應用在單機系統上,另外根據學校人員規模,我只建立起一個資料庫,在此資料庫基礎上建立起如下八個基本表:
學生:學號,姓名,出生年月,性別,籍貫,聯系地址,聯系電話,班級
班級:系名,班級,主要教室,輔導員,班長
系表:系名,系辦公室,聯系電話
課程表:課程號,課程號,班級,類別,學時,學名
平均成績表:班級,學號,姓名,平均成績
單科成績表:學號,姓名,課程表,課程名,成績
選課表:班級,課程號,學期
用戶名:用戶,密碼
(3)窗體設計:
班級管理(banjigl.dfm)
班級查詢(banjicx.dfm)
學籍管理(xuejigl.dfm)
學籍查詢(xuejicha.dfm)
課程管理(kechenggl.dfm)
課程查詢(kechengcha.dfm)
成績管理(chengjigl.dfm)
成績查詢(chengjicha.dfm)
(4)系統流程圖(Data Flow Diagram):
(5)資料庫概念結構設計
:
(6)資料庫邏輯結構設計
學生基本情況表:
欄位名 數據類型 是否可空 說明
班級 文本 否 外關鍵字
學號 文本 否 主關鍵字
姓名 文本 否 無
性別 文本 否 無
出生年月 日期 否 無
籍貫 文本 否 無
聯系電話 文本 是 無
聯系地址 文本 是 無
班級情況表:
系名 文本 否 外關鍵字
班級 文本 否 關鍵字
主要教室 文本 是 無
輔導員 文本 是 無
系名 文本 否 外關鍵字
班級 文本 否 關鍵字
系表:
系名 文本 否 關鍵字
系辦公室 文本 是 無
聯系電話 文本 是 無
課程表:
課程號 文本 否 關鍵字
課程名 文本 否 無
班級 文本 是 外關鍵字
類別 文本 是 無
平均成績表:
班級 文本 否 外關鍵字
學號 文本 否 關鍵字
姓名 文本 是 無
平均成績 長整型 是 無
單科成績表:
學號 文本 否 關鍵字
姓名 文本 否 無
課程號 文本 否 外關鍵字
課程名 文本 否 無
成績 長整型 是 無
班級選課表:
班級 文本 否 組合關鍵字
課程號 文本 否 組合關鍵字
課程名 文本 是 無
學期 文本 否 組合關鍵字
(6)課程管理部分的代碼:
選課管理:
begin
ComboBox1.Items.Append(adoquery1.FieldValues['系名']); //ComboBox1連到系表的 系名 欄位
adoquery1.Next;
end; end;
procere TForm11.ComboBox1Select(Sender: TObject);
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select * from class where 系名='+''''+ComboBox1.Text+'''');//查詢系名是否符合
adoquery2.ExecSQL;
adoquery2.Open;
while not adoquery2.Eof do
begin
ComboBox2.Items.Append(adoquery2.FieldValues['班級']);//符合就調用班級表的欄位 班級
adoquery2.Next;
end;
end;
procere TForm11.ComboBox2Select(Sender: TObject);
begin
adoquery4.Close;
adoquery4.SQL.Clear;
adoquery4.SQL.Add('select * from kecheng where 班級='+''''+ComboBox2.Text+'''');//查詢課程表中欄位 班級 是否符合,符合就調到
adoquery4.ExecSQL; //DBgiid1
adoquery4.Open;
end;
procere TForm11.ComboBox3Select(Sender: TObject);
begin
adoquery4.Close;
adoquery4.SQL.Clear;
adoquery4.SQL.Add('select * from kecheng where 班級='+''''+ComboBox2.Text+''' and 學期='+''''+ComboBox3.Text+''''); //判斷學期是否符合
adoquery4.ExecSQL;
adoquery4.Open;
end;
procere TForm11.SpeedButton1Click(Sender: TObject);
begin
while not adoquery4.Eof do
begin
if (adoquery4.FieldValues['課程號']=adoquery3.FieldValues['課程號']) and (adoquery4.FieldValues['班級']=Combobox2.Text) and (adoquery4.FieldValues['學期']=Combobox3.Text) then
break;
adoquery4.Next;
end;
if adoquery4.Eof then
begin
adoquery4.Insert; //把選課內容添加到選課表中。
adoquery4.FieldValues['課程號']:=adoquery3.FieldValues['課程號'];
adoquery4.FieldValues['班級']:=Combobox2.Text;
adoquery4.FieldValues['課程名']:=adoquery3.FieldValues['課程名'];
adoquery4.FieldValues['學期']:=Combobox3.Text;
adoquery4.Post;
end
else
begin
showmessage('本課程此班級已經選過'); //如果已經選過,彈出對話框「本課程此班級已經選過」
end;
end;
procere TForm11.SpeedButton2Click(Sender: TObject);
begin
if not adoquery4.Eof then
adoquery4.Delete;
end;
end.
課程管理:
procere TForm9.FormCreate(Sender: TObject);
begin
ADOQuery3.Close; //關閉資料庫
ADOQuery3.SQL.Clear; //清空
ADOQuery3.SQL.Add('select * from kechengbiao');
ADOQuery3.ExecSQL;
ADOQuery3.Open;
dbedit1.DataField:='課程號';
dbedit2.DataField:='課程名';
dbedit3.DataField:='課時';
dbedit4.DataField:='學分';
//DBComboBox1.DataField:='學期';
DBComboBox2.DataField:='類型';
end;
procere TForm9.SpeedButton1Click(Sender: TObject);
begin
if SpeedButton1.Caption='添加' then
begin
adoquery3.Insert; //添加到課程表
SpeedButton1.Caption:='確定';
SpeedButton4.Enabled:=true;
SpeedButton2.Enabled:=false;
SpeedButton3.Enabled:=false;
end
else
if SpeedButton1.Caption='確定' then
begin
if dbedit1.Text='' then
begin
showmessage('請輸入課程號!'); //如果課程號沒輸入,彈出對話框
end
else
begin
adoquery3.Post;
SpeedButton1.Caption:='添加';
SpeedButton4.Enabled:=false;
SpeedButton2.Enabled:=true;
SpeedButton3.Enabled:=true;
end;
end;
end;
procere TForm9.SpeedButton2Click(Sender: TObject);
begin
if adoquery3.Eof then
begin
SpeedButton2.Enabled:=false;
SpeedButton3.Enabled:=false;
end;
if SpeedButton2.Caption='刪除' then
begin
SpeedButton2.Caption:='確定';
SpeedButton4.Enabled:=true;
SpeedButton1.Enabled:=false;
SpeedButton3.Enabled:=false;
end
else
begin
adoquery3.Delete; //從數據表中刪掉所選記錄
SpeedButton2.Caption:='刪除';
SpeedButton4.Enabled:=false;
SpeedButton1.Enabled:=true;
SpeedButton3.Enabled:=true;
end;
end;
procere TForm9.SpeedButton4Click(Sender: TObject);
begin
adoquery3.Cancel;
SpeedButton1.Caption:='添加';
SpeedButton2.Caption:='刪除';
SpeedButton3.Caption:='修改';
SpeedButton4.Enabled:=false;
SpeedButton1.Enabled:=true;
SpeedButton2.Enabled:=true;
SpeedButton3.Enabled:=true;
end;
procere TForm9.SpeedButton3Click(Sender: TObject);
begin
if SpeedButton3.Caption='修改' then
begin
adoquery3.Edit; //修改課程表中的記錄
SpeedButton3.Caption:='確定';
SpeedButton4.Enabled:=true;
SpeedButton2.Enabled:=false;
SpeedButton1.Enabled:=false;
end
else
begin
adoquery3.Post;
SpeedButton3.Caption:='修改';
SpeedButton4.Enabled:=false;
SpeedButton2.Enabled:=true;
SpeedButton1.Enabled:=true;
end;
end;
procere TForm9.Label1DblClick(Sender: TObject);
begin
form11:=tform11.Create(application);
form11.ShowModal;
end;
end.
課程查詢部分:
procere Tform4.ComboBox1Select(Sender: TObject);
begin
edit1.Text:='';
button1.Enabled:=false;
end;
procere Tform4.Button1Click(Sender: TObject);
begin
if CheckBox1.Checked=true then
begin
ADOQuery1.Close; //先將資料庫關閉
ADOQuery1.SQL.Clear; //清空ADOQuery1內的SQL值清空
ADOQuery1.SQL.Add('select * from kecheng where '+ComboBox1.text+' = '+''''+edit1.Text+''' and 學期 = '+''''+ComboBox2.Text+''''); //合並查詢,符合的話在DBGrid中顯示出來
ADOQuery1.ExecSQL;
ADOQuery1.Open;
end
else
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from kecheng where '+ComboBox1.text+' = '+''''+edit1.Text+'''');//單個條件查詢
ADOQuery1.ExecSQL;
ADOQuery1.Open;
end;
end;
procere Tform4.N2Click(Sender: TObject);
begin //開啟其他管理界面
form2.show;
form4.Close;
end;
procere Tform4.N3Click(Sender: TObject);
begin
form3.show;
form4.Close;
end;
procere Tform4.N4Click(Sender: TObject);
begin
form5.show;
form4.Close;
end;
procere Tform4.N6Click(Sender: TObject);
begin
form1.show;
form4.Close;
end;
procere Tform4.N7Click(Sender: TObject);
begin
form4.Close;
end;
procere Tform4.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
button1.Enabled:=true; //當輸入條件後,「確定」按鈕為有效狀態
end;
procere Tform4.CheckBox1Click(Sender: TObject);
begin
ComboBox2.Enabled:=CheckBox1.Checked;//把查詢到的數據放在DBGrid上顯示出來
end;
end.
四、學校學生管理信息系統的使用說明
本系統分為學生用戶和管理用戶,如果你不是管理員,那隻能進行查詢,對數據沒有修改權力。只能進行查詢,裡面有各個方面的,如成績查詢,課程查詢,班級查詢,學籍查詢。各個界面都簡單明了,只要輸入你所需要的條件,系統自動調出數據。
管理員登陸點系統,點系統,輸入管理員用戶及密碼,跟資料庫的用戶表比較。如果通過
則能進行課程,學籍,成績,班級的管理。
五、結束語
學生信息管理系統有利於學校對學生資料的查詢,具有可使用性和可維護性,利於學校在需要之時快速了解學生的情況。並可以讓具有最高許可權的管理員更新、修改信息,已經具備了一定的功能。但由於時間關系和其它原因,本系統還有些不足之處, 如本系統沒有實現報表列印的功能等等, 還有待於完善。
在張波爾老師的指導下,經過一段時間的討論和上機的不斷調試,我順利的完成了開發任務。在開發過程中,我不僅增強了自學的能力和開發軟體的能力。對一些軟體開發模式有了更加深刻的認識,對應用軟體的熟練程度有所提高,已經能運用這項開發過程,學會了如何進行小組式的開發一個綜合系統。還從張老師身上學到了很多東西。張老師認真負責的態度嚴謹治治學精神都使我收益非淺。在此我特向給了很多指導和提供我們開發小組寶貴意見的張波爾老師表示感謝!因為本系統所涉及的內容非常廣泛並且比較復雜,加上時間的倉促,盡管我竭盡全力來保證系統的可靠性,但是肯定還有不足之處,懇請用戶批評指正。謝謝!
參考文獻:(1)Delphi6資料庫系統開發實例子導航 人民郵電出版社
(2)程序設計從入門到精通 科學出版社
(3)Delphi6.0程序設計教程 冶金工業出版社
(4)Delphi資料庫開發自學教程 人民郵電出版社
各模塊主要代碼
1、成績管理模塊
⑴ 成績管理
procere TForm8.Button1Click(Sender: TObject);
var
i:boolean;
begin
i:=false;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select * from pjcj where '+edit2.Text+'');
ADOQuery2.ExecSQL;
ADOQuery2.Open;
if not ADOQuery2.Eof then ( 判斷是否資料庫最後一項)
i:=true;
if i then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from dkcj where 學號 ='+''''+ADOQuery2.FieldValues['學號']+''''); (使用SQL進行查詢)
ADOQuery1.ExecSQL;
ADOQuery1.Open;
button1.Enabled:=false;
end
else
begin
showmessage('沒有符合查詢條件的記錄!!'); (如果沒有符合條ComboBox1.Text:='';
ComboBox2.Text:=''; 件的,顯示該語句)
ComboBox3.Text:='';
edit1.Text:='';
edit2.Text:='';
adoquery1.Close;
adoquery2.Close;
ComboBox1.Enabled:=true;
end;
dbedit6.DataField:='學號';
dbedit7.DataField:='姓名';
dbedit8.DataField:='班級';
dbedit1.DataField:='學號';
dbedit2.DataField:='姓名';
dbedit3.DataField:='課程號';
dbedit4.DataField:='課程名';
dbedit5.DataField:='成績';
end;
(2)成績查詢
procere Tform3.Button1Click(Sender: TObject);
var
i:boolean;
begin
i:=false;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select * from pjcj where '+edit2.Text+'');
ADOQuery2.ExecSQL; (根據SQL進查詢)
ADOQuery2.Open;
if not ADOQuery2.Eof then
i:=true;
if i then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from dkcj where 學號 ='+''''+ADOQuery2.FieldValues['學號']+'''');
ADOQuery1.ExecSQL;
ADOQuery1.Open;
button1.Enabled:=false;
end
else
begin
showmessage('沒有符合查詢條件的記錄!!');
ComboBox1.Text:=''; (當沒有符合條件的記錄,自動
ComboBox2.Text:=''; 清空選擇框里的查詢條件)
ComboBox3.Text:='';
edit1.Text:='';
edit2.Text:='';
adoquery1.Close;
adoquery2.Close;
ComboBox1.Enabled:=true;
end;
end;
procere Tform3.DBGrid2CellClick(Column: TColumn);
var
str:string;
begin
str:=ADOQuery2.FieldValues['學號'];
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from dkcj where 學號 ='+''''+str+'''');
ADOQuery1.ExecSQL;
ADOQuery1.Open;
end;
procere Tform3.N4Click(Sender: TObject); (管理界面的切換)
begin
form5.show;
form3.Close;
end;
procere Tform3.N6Click(Sender: TObject);
begin
form1.show;
form3.Close;
end;
procere Tform3.Edit1Exit(Sender: TObject);
begin
if ComboBox1.Text='平均成績' then (根據平均成績查詢)
begin
edit2.Text:=edit2.Text+edit1.Text;
end
else
begin
edit2.Text:=edit2.Text+#39;
edit2.Text:=edit2.Text+edit1.Text;
edit2.Text:=edit2.Text+#39;
end;
end;
procere Tform3.Button2Click(Sender: TObject);
begin (本段為對查詢條件的刷新,進
ComboBox1.Text:=''; 行不同條件的輸入)
ComboBox2.Text:='';
ComboBox3.Text:='';
edit1.Text:='';
edit2.Text:='';
adoquery1.Close;
adoquery2.Close;
button1.Enabled:=false;
ComboBox1.Enabled:=true;
end;
2、 班級管理模塊
(1)班級管理
procere TForm9.ComboBox1Select(Sender: TObject);
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from class where 系名 = '+''''+ComboBox1.Text+'''');
ADOQuery1.ExecSQL;
ADOQuery1.Open; (根據系別顯示班級信息)
dbedit1.DataField:='系名'; (這五項為表的數據項名)
dbedit2.DataField:='班級';
dbedit3.DataField:='輔導員';
dbedit4.DataField:='班長';
dbedit5.DataField:='專業';
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
button4.Enabled:=true;
end;
procere TForm9.Button2Click(Sender: TObject); (記錄的刪除操作)《修改與添加操作與這類似》
begin
if button2.Caption='刪除' then
begin
button2.Caption:='確定';
button1.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=true;
⑦ 關於delphi資料庫軟體的開發!
不難,我剛剛做過一個。這個鏈接3天內有效,你可以試試看
您上傳的文件:
大小 文件名
1.7M 完全功能版.rar
已經成功地保存在Mofile
文件提取碼: 6316289552039628
當您的朋友需要提取此文件時只需:
匿名提取文件連接 http://pickup.mofile.com/6316289552039628
或登錄Mofile,使用提取碼 6316289552039628 提取文件
⑧ 試簡述Delphi中快速建立一個簡單資料庫程序的步驟,包括所用控制項及設置方法(以access資料庫為例)
假設你建好了access資料庫,那麼,操作如下:
1. 在ADO標簽里拉出一個ADOConnection控制項,用於與資料庫建立連接,建議將loginprompt屬性去掉。
2.在ADO標簽里拉出一個ADOQuery控制項,用於查詢資料庫,並得到數據集合。
設置其connection屬性為上面添加的ADOConnection控制項的名字。
設置其SQL屬性比如為 select * from 數據表名稱
設置其Active屬性為true
3.從Data Access標簽里拉出一個DataSource控制項,他是一個位於ADOQuery控制項和其他數據顯示控制項的中介。
設置其Dataset屬性為上面添加的ADOQuery控制項的名字
4.從Data Control標簽里拉出一個DBGrid控制項,一個DBNavigator控制項,兩者的DataSource屬性都設置為上面添加的DataSource控制項的名字。
雙擊DBGrid控制項,在彈出菜單上「添加所有欄位」
⑨ 如何在Delphi中開發資料庫程序
打開:控制面板中\ODBC數據源\User
DSN\MS
ACCESS
DATABASE,點擊"Configure...",在ODBC
Microsoft
Access
Setup中點擊"Select..."選中你的Access庫,點擊「OK」回到ODBC
Microsoft
Access
Setup,點擊"Advanced..."設你的用戶名和暗碼,依次點擊「OK」「肯定」退出ODBC;進入DELPHI,把你的Table1的DatsbaseName屬性設為MS
Access
Database,再將Table1的Active屬性設為"True",在DBGrid1中就可在設計時看見你的數據了。當然,這是最簡單的一個例子。OK?!
⑩ 新手如何delphi開發資料庫
feng_me(哲哲),你的mail?感謝大人人,我熟悉sql,以及c/s(用java做過類似聯眾的游戲),socket,那麼下面我除了要適應delphi的語法,界面以及數據感知組件的應用,還有什麼要特別留意的?我的是[email protected]