跪求Delphi sql 查询、修改等语句(Tquery)【请仔细看补充】

跪求Delphi sql 查询、修改等语句(Tquery)【请仔细看补充】,第1张

DBEDIT组件是一种数据感知控件,用它的好处是在设计期和运行期都可以自然的显示数据,但如果你把它们用来作为数据录入控件,那就不如用edit和combobox一类的数据编辑组件了这里DB是数据库的意思,你所说的"DB类型里面的A类型",我不懂,从来没有看到过这种说法关于数据库的说法有:

1、添加数据;2、修改数据;3、删除数据;4、插入数据;5、查询数据;这些 *** 作一般都需要数据集组件来完成。在DELPHI中常用的数据集组件在三种,ADO,BDE,还的IB,BDE已经被ADO所取代,IB是专门 *** 作因特贝思数据库的,因特贝思这玩意由于全是洋文,国内很少有人用它。还有很多第三方数据库控件。ADO现在来说是一种主流数据库 *** 作控件了。数据库一般来说,便携式(桌面)就用ACCESS,用这个数据库最大的好处就是不需要安装,在任何电脑任何时刻都可以运行数据库 *** 作软件,用D编的 *** 作它的软件,在U盘上都可以运行,但是它数据容量相对来说小一些。容量比较大的数据库就是SQL server了,达到了TB级,一般的企业来说够用了,现在种县市的合作医疗管理系统都是用它来做的。

DELPHI的数据库 *** 作软件,一般来说,由数据库、ADO数据库 *** 作组件、data ACCESS(负责连接数据库 *** 作控件与数据显示组件的控件)、data controls(数据显示控件)构成,四者缺一不可。ado组件通过发送SQL命令来存取、修改、删除数据库中的数据,然后通过data ACCESS控件来返回数据到由data controls控件构成的数据显示界面。

SQL命令又是独立于编程语言而存在的,也就是任何编程语言都可以使用这些命令,来进行数据库 *** 作。SQL命令不多,全部算起来百十来条而已,但用它来 *** 作数据库几乎达到了出神入画的地步。

看你提的问题,目前你的DELPHI编程水平还是入门级,你应该从最基础的知识做起,如果你想做一名数据库管理的程序员,你就应该先熟悉一下上述构成数据库 *** 作软件的四个部件。这些网上都有。

强大的数据库开发功能无疑是Delphi王冠上的明珠 至少有 %以上的人每天使用Delphi来开发数据库程序 基于积木式的VCL数据库控件 以及Dev Express和Woll Woll等公司提供的强大的第三方数据库明了控件 毫不夸张的说只需要简单的设置一下属性 拖拉几下鼠标我们就可以非常快速的完成数据库程序的开发 由于Delphi的数据库功能过于强大了 所以很多人就忽视了一个事实 就是ActiveX同样可以提供灵活的数据库绑定 遗憾的是Delphi本身所提供的几个第三方的ActiveX控件中没有一个是数据库明了的控件 这间接导致了一个误解 使得很多人误以为Delphi并不支持数据明了的ActiveX控件(也包括很久以前的我J) 这当然是错误的看法

在Delphi中使用数据明了的ActiveX控件

在下面的例子中 我们将使用随Office 安装到系统中的Microsoft Calendar 控件来进行演示 它就是一个数据明了控件 选择Component | Import ActiveX Control 选择Microsoft Calendar (见下图 ) 把类名从TCalendar改成TAXCalendar 以避免同系统中原有的同名控件冲突 然后点Install按钮安装此控件

新建一个程序 在窗体上放置一个TAXCalendar控件 再放上一个DataSource 和Table控件 设定DataSource的Dataset为Table 然后设定Table 的DataBaseName 属性为DBDEMOS TableName 属性为EMPLOYEE DB 最后设定Table Active属性为True

接下来就该进行数据库绑定了 注意一下引入的TAXCalendar具有DataSource和DataBindings这两个同一般ActiveX控件不同的属性 这是因为ActiveX Import Wizard在引入ActiveX控件先判断是否是数据库明了的控件 如果是就以TDBOleControl作为基类进行继承 如果不是就从TOleControl开始继承 而TDBOleControl实现了DataBindings和DataSource属性 设定AXCalendar DataSource属性为Datasource

这时我们在窗体上用鼠标右键单击TAXCalendar控件的话 会发现在右键菜单中多出了一个DataBindings…菜单项(见下图 )

点击菜单项后 会显示数据绑定属性编辑框(见下图 ) 分别在FieldName列表框中选定HireDate 在Property Name列表框中选择Value( )(其中 是Value的Dispid号) 点击Bind按钮 就会在数据库字段和Value属性间建立数据关联

最后 再在窗体上放置一个DBGrid和DBNavigator控件 并设定它们的DataSource为DataSource 运行程序 移动当前数据位置的时候 你可以注意到ActiveX的日期显示也会随之变化 同数据库中的Hiredate保持一致 如图 所示

创建数据明了的ActiveX控件

虽然我们已经清楚了Delphi的确可以使用数据明了的ActiveX控件 那么一个新的问题就产生了 Delphi本身可不可以创建数据明了的ActiveX控件呢?由于Delphi提供了一步到位的ActiveX控件转换生成 就有很多人希望能够把Delphi中强大的数据库控件转换为ActiveX控件 以便能在其他支持ActiveX的开发环境开发数据库程序时仍然能够享受到象在Delphi中一样的轻松愉快的感觉 但是我在前面第一部分中已经提到了 由于Delphi的数据明了控件同ActiveX数据库控件的在内部机制上差距过大 因此Delphi无法简单的直接转换其强大的数据库控件 那么是不是就意味我们就没有办法了呢?of course not! 其实使用类型库编辑器 我们可以异常轻松的实现数据明了的ActiveX控件 就让我们用TEdit控件来试验一下 看看如何去做

选菜单命令New | ActiveX | ActiveX Control启动ActiveX Control Convert Wizard 选TEdit控件作为转化对象 生成EditX ActiveX框架

接下来 我们将改造TEdit的Text属性 使其支持数据绑定 选 View | Type Library来察看Delphi生成的类型库 并选中Text属性 然后切换到Flags属性页(见下图 )

注意在Flags属性页有很多多选框 对于我们来说 只关心同数据绑定相关的选项 它们是Bindable Display Bindable Default Bindable Immediate Bindable和Request Edit选项

标记一个属性为bindable后 并将其同数据库字段绑定后 当用户修改了属性后 控件就会通知数据库值已经变化 并请求数据库记录更新状况 数据库反过来也会通知记录更新是否成功

Bindable选项表明属性支持数据绑定 如果把属性标记为bindable 属性将在其值变化时通知其容器

Request Edit表明属性支持OnRequestEdit 通知消息 这允许控件询问容器属性值是否允许用户修改

Display Bindable表示容器可以向用户显示这个属性是可绑定的

Default Bindable表示它是唯一的 缺省的可绑定属性 使用它必须同时标记了Bindable属性

Immediate Bindable当被标记时 所有的改变都会被通知 同时还需要设定bindable和Request Edit标记

下面我们就标记EditX控件的Text属性为Bindable Display Bindable Default Bindable 和Request Edit 然后点Refresh按钮刷新类型库 最后选Run | Register ActiveX Server注册ActiveX控件

再引入新的EditX ActiveX控件 就会发现它确实实现了数据绑定的功能 下面就是一个使用了数据明了的EditX的程序的运行示意图 (Delphi的ActiveX数据明了功能的实现的确简单很COOL 不是吗?

lishixinzhi/Article/program/Delphi/201311/24662

dbgrid

delphi

数据感知控件,通常用于显示数据库的内容,而设置某字段的显示数据格式,有两处地方:

1、可以设置数据库的字段

在诸如

ADOTable

等控件上双击,会d出

Fields

Editor

编辑器,将需要的字段添加进去之后,就可以设置字段的显示数据格式:

2、双击

dggrid

控件,会d出

Columns

Editor

编辑器,可以设置每一列的显示:

以上就是关于跪求Delphi sql 查询、修改等语句(Tquery)【请仔细看补充】全部的内容,包括:跪求Delphi sql 查询、修改等语句(Tquery)【请仔细看补充】、Delphi深度探索-数据库明了的ActiveX控件、delphi中怎么设置dbgrid中显示数据的格式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9668081.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存