Delphi資料庫程序設計
1. 請描述資料庫架構模式和delphi程序設計模式
使用Delhpi可以方便而快速地建立強大的資料庫應用程序,可以和Paradox、dbase、Lo cal InterBase Server、Foxpro及ODBC數據源等多種桌面型資料庫直接配合使用。
資料庫轉換方法
1.所使用的控制項
2.TBatchMove控制項的使用
TBatchMove允許在一組記錄或是整個數據表中執行特種作業,這個控制項的主要用途在於 把數據從伺服器中卸到本地的數據源供分析或進行其他操作。TBatchMove可以在目的地建立 對應於原數據表內容的數據表,自動將列名及數據類型進行適當的對應操作。
TBatchMove兩個特性指明批量移動(Batch Move)操作的源表及目的表。Source指定一個 對應於已有的源數據表的數據集(一個Tquery或Ttable控制項),Destination指明對應於一個數 據庫數據表的Ttable控制項,目的數據表可以是已經存在的也可以是不存在的。
Mode特性指明TBatchMove對象所要做的事情:
我們可以根據batCopy模式,對資料庫類型進行適當的轉換,以下是從dBASE類型到其它類 型之間的轉換結果:
資料庫轉換舉例
現有用Foxbase開發的財務程序中的會計科目資料庫(kjkmk.dbf),系統將升級到Window s環境下開發,資料庫將採用Paradox語言。為了沿用該庫結構和數據,可採用如下方法進行轉 換。
1.Datasource1控制項:
AutoEdit True
DataSet Table1
Enabled True
Name DataSorce1
2.Table1控制項:
DatabaseName cw
Name Table1
Readonly False
TableName KJKMK
TableType udBase
Datasource1控制項和Table1控制項共同定義被轉換的源文件,該文件是在別名為cw里的kjk mk,文件類型為Dbase。
3.BatchMove1控制項:
Destination Table2
Mode balCopy
Name BatchMove1
Sorce Table1
MatchMovel控制項定義轉換類型為Copy以及源文件、目標文件。
4.Datasource2控制項:
AutoEdit True
DataSet Table2
Enabled True
Name DataSorce2
.Table2控制項:
DatabaseName cwdb
Name Table2
Readonly False
TableName KJKMK
TableType uParadox
Datasource2控制項和Table2控制項共同定義轉換後的目標文件,該文件是在別名為cwdb里的 kjkmk,文件類型為Paradox。
6.StringGrid1控制項:
Datasorce Datasorce1
Name StringGridl
StringGridl網格控制項先定義源文件,執行轉換後再定義目標文件,主要用於方便查看。
7.Button1控制項:
OnClck ButtonClck
OndragDrop
Ondragover
OnEnddrag
該控制項有一個OnClick事件,表示執行文件類型轉換。其代碼如下:
procere TForm1.Button1Click(Sender:TObject);
begin
BatchMove1.execute;
end;
經上述方法定義,編譯執行後,即可將kjkmk.dbf文件轉換成kjkmk.db文件,然後就可以用 Database Desktop工具對其進行修改調整。
用此方法還可進行其它任意文件的轉換
2. 怎麼用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顯示出來了。
3. delphi程序設計,資料庫原理與SQLSever2005(文字回答就行,能畫圖就麻煩畫一下謝謝)
1、繪出學校學生管理信息系統功能模塊圖。
提供以下一份比較詳細的 學生管理信息系統 的開發資料:
https://wenku..com/view/21b38fd0ce2f0066f53322bc.html
2、學生信息數據表中,要求錄入學生照片(大小不限),並要求從客戶端通過瀏覽器即可完成圖片的選取和錄入,請問如何實現,寫出其過程及關鍵代理。
「通過瀏覽器即可完成圖片的選取和錄入」,不知道是指的什麼,用 delphi 完成 瀏覽器+伺服器模式代碼編寫?
3、資料庫的連接採用ADO、net、ADO、OLE-DB、ODBC哪種方式較好?這一些方式間有什麼區別?
通常 delphi 里用 ADO 的連接方式要多一些。
以下是相對詳細些的描述:
Open Database Connectivity (ODBC) 是使用SQL語法操縱關系數據的國際標准. 要操縱數據的話就需要通過有微軟或其他廠商提供的ODBC drivers.
OLE DB是微軟的low-level的訪問數據的介面. OLE DB Provider跟ODBC Driver是類似的, Provider對OLE DB Consumer暴露DataSource. ADO就是一種OLE DB Consumer.
Microsoft OLE DB Provider for ODBC Drivers是第一個OLE DB Data Provider, 能夠對OLE DB consumer暴露任何的ODBC DataSource.
ADO是OLE DB暴露的高級的數據介面.
OLEDB是一種底層數據訪問界面介面。是用於第三方驅動程序商家開發輸出數據源到ADO-技術的應用程序或用於C++的開發者開發定製的資料庫組件。
OLE DB 是用於訪問數據的重要的系統級編程介面,它是 ADO 的基礎技術,同時還是 ADO.NET 的數據源。
ADO 是基於OLE DB的訪問介面,它是面向對象的OLE DB技術,繼承了OLE DB的優點。屬於資料庫訪問的高層介面。可以這么說,ADO為OLEDB提供高層應用API函數。
4. 如何學習delphi資料庫編程
以我的經驗一本語言教程 + 一本實例效果最佳:
劉瑞新、張志綱、張兵義等編著,Delphi資料庫程序設計教程,機械工業出版社,2004.2
李文立 劉強 梁冰編著,Delphi資料庫系統開發案例精選,人民郵電出版社2006-5
祝你很快上手.
5. 怎樣學好delphi連接資料庫編程
現在新華書店裡一般有本
《delphi程序開發觸類旁通百例》機械工業出版社
如果只是學習一般的入門資料庫編寫知識
這本書超合適,例子很短,但很簡潔實用,還配光碟教程
可以自己邊學邊練
最好是自己從頭到尾編制一個資料庫
如果對delphi其他也不熟悉,建議看一下羅小平編的一本《delphi精要》書名似乎是這個,太經典了
另外網上可以得到大量資料
我給你我收集的一部分資料
http://221.10.44.214:82/courseware/delphi/Index.htm
http://www.7622.com/dir/1_1.htm
http://www.pgsun.com/doc/200513/200510291555278.htm
http://www.delphifans.com/SoftView/SoftView_66.html
Delphi編譯錯誤信息對照表http://www.pgsun.com/doc/200512/200510291420249.htm
http://www.51dbook.com/
http://post..com/f?kz=48724350
大富翁論壇常去一下
qq群 delphi小屋9355927 我愛delphi9457713
6. Delphi程序設計是什麼
Pascal語言 & Delphi
優點
(1)Pascal語言結構嚴謹,可以很好地培養一個人的編程思想。
(2)Delphi是一門真正的面向對象的開發工具,並且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執行的文件,而且編譯速度非常快。
(4)Delphi具有強大的資料庫開發能力,可以讓你輕松地開發資料庫。
缺點
Delphi幾乎可以說是完美的,只是Pascal語言的過於嚴謹讓人感覺有點煩。
Pascal語言簡介
Delphi這個名字源於古希臘的城市名。它集中了第三代語言的優點。以Object Pascal為基礎,擴充了面向對象的能力,並且完美地結合了可視化的開發手段。Delphi自1995年3 月一推出就受到了人們的關注,並在當年一舉奪得了多項大獎。
Delphi的出現打破了V承可視化編程領域一統天下的局面。並且Delphi使用了本地編譯器直接生成技術,使程序的執行性能遠遠高於其它產品生成的程序。它還是真正的面向對象的編程語言。PASCAL語言的嚴謹加上可視化的優勢和強大的資料庫功能使得它有充分的資本和微軟的VB叫板。許多人當時都認為Pascal 是最有前途的程序設計語言,並預測Delphi將會成為可視化編程的主流環境。
Delphi在你編好程序後自動轉換成.EXE文件它運行時速度比VB快,而且編譯後不需要其他的支持庫就能運行。它的資料庫功能也挺強的,是開發中型資料庫軟體理想的編程工具。 Delphi適用於應用軟體、資料庫系統、系統軟體等類型的開發。而且它擁有和VB差不多一樣的功能,而且一樣能應用API函數,這在控制Windows很有用。
Delphi是全新的可視化編程環境,為我們提供了一種方便、快捷的Windows應用程序開發工具。它使用了Microsoft Windows圖形用戶界面的許多先進特性和設計思想,採用了彈性可重復利用的完整的面向對象程序語言(Object-Oriented Language)、當今世界上最快的編輯器、最為領先的資料庫技術。對於廣大的程序開發人員來講,使用Delphi開發應用軟體,無疑會大大地提高編程效率,而且隨著應用的深入,您將會發現編程不再是枯燥無味的工作——Delphi的每一個設計細節,都將帶給您一份欣喜。
Delphi的基本形式
Delphi實際上是Pascal語言的一種版本,但它與傳統的Pascal語言有天壤之別。一個Delphi程序首先是應用程序框架,而這一框架正是應用程序的「骨架」。在骨架上即使沒有附著任何東西,仍可以嚴格地按照設計運行。您的工作只是在「骨架」中加入您的程序。預設的應用程序是一個空白的窗體(form),您可以運行它,結果得到一個空白的窗口。這個窗口具有Windows窗口的全部性質:可以被放大縮小、移動、最大最小化等,但您卻沒有編寫一行程序。因此,可以說應用程序框架通過提供所有應用程序共有的東西,為用戶應用程序的開發打下了良好的基礎。
Delphi已經為您做好了一切基礎工作——程序框架就是一個已經完成的可運行應用程序,只是不處理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代碼而已。 在空白窗口的背後,應用程序的框架正在等待用戶的輸入。由於您並未告訴它接收到用戶輸入後作何反應,窗口除了響應Windows的基本操作(移動、縮放等)外,它只是接受用戶的輸入,然後再忽略。Delphi把Windows編程的回調、句柄處理等繁復過程都放在一個不可見的Romulam覆蓋物下面,這樣您可?/td>
7. delphi資料庫編程,ADO+SQL,高手進!
用SQL 讀出需要的數據,顯示到LISTVIEW 或者別的組件,再用SQL寫入數據,這樣會讓你的小程序靈活的多.不必去用資料庫組件.
8. delphi程序設計
假定你用的是ADO連接,用adoquery進行查詢。控制項名為 adoquerytable
sno 為欄位名
哪么 adoquerytable('sno') 可能用幾種取值方式
adoquerytable('sno').asstring:=
adoquerytable('sno').asinteger:=
adoquerytable('sno').asfloat:=
假定sno欄位為數字類型,則上述的方法都能賦值,但sno欄位為字元型,在運行
adoquerytable('sno').asfloat的時候就有可以報錯。
table1sno.value這種寫法是錯誤的。
9. 怎樣學習delphi的資料庫編程
先學好一門資料庫語言(這個才是重點),再學用一下ado\dbe中的連接件,數據訪問組件datasource,數據控制組件dbgrid、dbEdit之類的。
10. 如何在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?!