注册 登录
编程论坛 Delphi论坛

关于数据库输入问题

xiexinxing 发布于 2007-04-23 11:29, 704 次点击
哪为大哥能指导下!输入查询的字段如果输入的是空字段或者是数据库表中没有的字段用showmessage()显示输入错误问题
怎么判断输入的字段是数据库表中没的
if not edit1.text in adoquery1.fieldlist then
我这样用不行。。哪个大哥能告诉我下
还有这样做要不要注意其他什么?
8 回复
#2
xiexinxing2007-04-23 15:41
我用了循环语句写了判断的!但是不管输入什么字段名查询都是显示输入字段名不存在。。哪个大哥帮我看看哪错了好吗?
for i:=0 to adoquery1.FieldCount-1 do
begin
if edit1.Text =adoquery1.Fields[i].AsString then
break
else
if i=adoquery1.FieldCount-1 then
begin
showmessage('输入字段名不存在');
exit;
end;
end;
#3
xiexinxing2007-04-23 17:10
谁能告诉我下啊。急啊!大哥们。。拜托拜托啊!
#4
xu20002007-04-23 22:23
你比较的是各个字段的值。不是某一字段的全部值。
while not adouery1.eof do
if edit1.Text =adoquery1.Fields[0].AsString then
break
else
adoquery1.next;
.........
#5
xiexinxing2007-04-24 10:25

我是想比较输入查询的字段名字是否在数据库中有!
能告诉我下应该怎么查吗?拜托了。。在线等。。急啊!

#6
xu20002007-04-24 10:31
for i:=0 to adoquery1.FieldCount-1 do
begin
if edit1.Text =adoquery1.Fields[i].fieldname then
break
else
if i=adoquery1.FieldCount-1 then
begin
showmessage('输入字段名不存在');
exit;
end;
end;
#7
xiexinxing2007-04-24 10:41
回复:(xiexinxing)关于数据库输入问题
谢谢啊!还有点问题想请教下!
adoquery.fields[i].asstring
和adoquery.next
这样的有什么区别啊
就是adoquery指的位置是列还是行啊?
fields[i].asstring指的是字段的的行还是列啊?
#8
xu20002007-04-24 11:00
这两个根本就不一样。
adoquery.next是向下移一行。是一个方法。
fields[i].asstring是指第i列当前行的值。
#9
xiexinxing2007-04-24 11:10

非常感谢!

1