请大家多多观照,这已经是倾家荡产的分了,关于数据库!(90分)

  • 主题发起人 主题发起人 zxp_ping
  • 开始时间 开始时间
Z

zxp_ping

Unregistered / Unconfirmed
GUEST, unregistred user!
我本想过滤一些记录(Access 97数据库,TTable控件)我想得用Filter来过滤。
开始我想让一个字段(Name)不包含'XX'的显示,但用Like却提示出错:capacity Cann't
Suppose!!!

没办法,就新建一个字段,Number.条件改为:
Filter := 'Number <> 1000',可是却好象出现了三种情况,不等于只有两条记录,等于则
只有一条记录,可总共和5条记录???剩下那几条记录内容好象是空的。。?是什么原因?
还请指点迷津!!
 
Table可以执行SQL吗?
 
因为我用DBGride跟Table关联起来了。怎么执行SQL?帮人帮到底呀。
 
怎么?兄弟都嫌分少了?
 
DBE用TQuery控件+TUpdateSQL控件,可使用SQL语句,一般不用TTable控件,效率不高。
ADO用TADODataSet / TADOQuery控件
 
在Table的OnFilterRecord事件里面过滤, 如下:
Accept:=Number<>1000;
 
用TQuery吧,不过好像Table里面的filter应该是可以完成你的要求的。
 
其中有null值没有考虑倒,null值是不能进行比较的
只能改为ADODataset,用sql实现
select * from table where (number<>1000 or number is null)
 
接爱 l_x_yuan答案:
Filter := ‘number= NULL or number<> 10000' ;
成功!!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
643
import
I
I
回复
0
查看
740
import
I
后退
顶部