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?!