delphi7怎么获取txt文本中的某个数值然后作为条件在delphi中查询数据库

delphi7怎么获取txt文本中的某个数值然后作为条件在delphi中查询数据库,第1张

delphi 语言作为一个 RAD (快速应用程序开发工具),提供了大量丰富的控件和函数库,帮助程序开发者可以快捷编写应用代码。

“怎么获取txt文本中的某个数值然后作为条件在delphi中查询数据库 ”,可以分解成两个需要解决的步骤:

1、怎么获取txt文本中的某个数值

获取 txt 文本中的值,可以使用多种手段,例如:

如果 txt 文本是以特定格式(INI 文件),则可以用 TIniFiles 来直接读取出指定的某个数值;

var

  fIni: TIniFile

 aValue: string

begin

 fIni := TIniFIle.Create('d:\test\test.ini')

 aValue := fIni.ReadString('节名', '变量名', '默认值')

end

如果是从大段文本中获取指定的某个数值,可以使用字符串处理函数(如 Pos),比较复杂的可以使用 正则表达式 。

2、将某个数值作为条件在delphi中查询数据库

delphi 提供的数据库支持很强大,比较常用的是 TADOQuery 等,常见的示例代码如下:

Query1.close

Query1.SQL.Clear

Query1.SQL.Add('select * from mytable where 字段名称=数值')

Query1.open

看看你是不是这个意思 ?

procedure TF_demo.Button3Click(Sender: TObject) //模糊查询

begin

adotable1.close

datasource1.DataSet:=adoquery1

if trim(Edit1.Text)<>'' then

begin

adoquery1.close

adoquery1.sql.clear

adoquery1.SQL.Add('select * from people ')//添加条件

if trim(combobx1.text) = '按班级查询' then //防止输入items属性时,输入空格,可以加trim()命令,下面相同,需要可以自己加。

adoquery1.sql.add(' where 班级字段 like '''+'%'+Edit1.text+'%'+'''')

if combobx1.text = '按专业查询' then

adoquery1.sql.add(' where 专业字段 like '''+'%'+Edit1.text+'%'+'''')

if combobx1.text = '按姓名查询' then

adoquery1.sql.add(' where name like '''+'%'+Edit1.text+'%'+'''')

adoquery1.open

end

其它就是找到combobox1的items属性,双击

然后输入

按班级查询

按专业查询

按姓名查询

Locate 的函数的原型定义如下:

function Locate(const KeyFields: String const KeyValues:VariantOptions: TLocateOptions): Boolean

其中,第3个参数定义如下:

TLocateOption = (loCaseInsensitive, loPartialKey)

loCaseInsensitive 表示查找数据不分大小写;loPartialKey 表示以部分字符串来查寻数据。

缺省情况下,即第3个参数为 [] 时,此时要求查找要与目标字符完全匹配。

因此,假设 Name 字段中有  ForYouTou 的记录时:

locate('Name','You',[]) 是查找不到该条记录的。

可以尝试使用以下代码:

tbl1.Locate('Name','*You',[loCaseInsensitive, loPartialKey])


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存