我的程序如下
begin
ADOQuery1.SQL.Clear;
ADOQuery1.Close;
if combobox2.Text:= '资料ID' then
//begin
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+'资料ID'+' = '+''''+'%'+edit1.text+'%'+'''';
//else
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+ComboBox2.text+' like '+''''+'%'+edit1.text+'%'+'''';
ADOQuery1.Active:=true;
//end;
end;
我用的是adoquery,以下问题能给出例子的最好能给出例子,不胜感激。
问题1、上面的程序有三行屏蔽了,否则不能运行,为什么?
2、= 和like这两个命令的标准格式到底是啥?使用时要注意啥,我老用不对!
3、用资料id查询时如果edit1为空,如何让grid显示全部记录?
4、怎样实现当前是第_条记录,跳转到_条?当我添加一条记录时,怎样让共有_条记录也实时更新?
5、 panel groupbox等控件如何让其透明,因为我最后放它,却老是覆盖其它控件?
6、好多控件的autosize怎么用?还有indexname?
7、怎样让edit中只能输入数字,当输入其它时弹出一提示对话框?
8、请给出一个提示是否真的退出的例子?
9、怎样做界面啊?我的界面现在丑的要死!郁闷!!!
10、如何实现,选中一复选框之后就选中了grid中的一条记录?
注:我是新手,。我会非常感谢您!
begin
ADOQuery1.SQL.Clear;
ADOQuery1.Close;
if combobox2.Text:= '资料ID' then
//begin
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+'资料ID'+' = '+''''+'%'+edit1.text+'%'+'''';
//else
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+ComboBox2.text+' like '+''''+'%'+edit1.text+'%'+'''';
ADOQuery1.Active:=true;
//end;
end;
我用的是adoquery,以下问题能给出例子的最好能给出例子,不胜感激。
问题1、上面的程序有三行屏蔽了,否则不能运行,为什么?
2、= 和like这两个命令的标准格式到底是啥?使用时要注意啥,我老用不对!
3、用资料id查询时如果edit1为空,如何让grid显示全部记录?
4、怎样实现当前是第_条记录,跳转到_条?当我添加一条记录时,怎样让共有_条记录也实时更新?
5、 panel groupbox等控件如何让其透明,因为我最后放它,却老是覆盖其它控件?
6、好多控件的autosize怎么用?还有indexname?
7、怎样让edit中只能输入数字,当输入其它时弹出一提示对话框?
8、请给出一个提示是否真的退出的例子?
9、怎样做界面啊?我的界面现在丑的要死!郁闷!!!
10、如何实现,选中一复选框之后就选中了grid中的一条记录?
注:我是新手,。我会非常感谢您!
解决方案 »
- 急问64位操作系统下写注册表问题。
- 求教如何实现鼠标双击时不触发单击事件
- Delphi dll回调的使用
- DELPHI 程序员
- 最近想买NB 编程 ,大家有用过戴尔网上订购的经历吗?买个什么样的配置好呢?
- MYSQL +DELPHI 问题。高手来啊。要死啦
- 不检查tree的当前节点有没有儿子,而在当前节点前显示那个+号,行不行,怎么做
- DBGrid的排序??
- 在进销存中,能够时时统计每种存货的‘库存数量’‘成本均价’‘库存总价’,存放这些信息是否需要新建一表???
- 如何将窗体的关闭变灰?
- 请问Delphi构建的DLL工程文件中“begin end”之间的代码在何时执行?
- 用BDE连接SQL SERVER 2000在应用程序界面登录时出错,是怎么回事啊?
if() then
begin
else
end;
语法有问题,应该是
if () then
begin
end
else
begin
end;
第二:
SQL里面 = 是精确匹配 like 是模糊匹配
if edit1.text = '' then
ADOQuery1.sql.Text:='select * from 业务资料库
else
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+'资料ID'+' = '+''''+'%'+edit1.text+'%'+'''';第四:用While遍历整个记录集
第五:Visible属性可以控制是否显示
第七:在Edit的OnkeyPress事件中加限制
第八:用MessageBox
if MessageBox(0,'你真的要退出吗?','警告',MB_OKCANCEL+MB_ICONWARNING)=IDOK then
begin
close;
end;
第九:这个没办法
第十:在复选框的OnClick事件中做处理
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key in['0','1','2','3','4','5','6','7','8','9'] then
Edit1.Text:=Edit1.Text+key
else
exit;
end;
begin
if (not (Key in ['0'..'9'])) and (not(key in['.']))and (key<>#8) then
Key :=#0;
end;这样比较好.
ADOQuery1.sql.Text:='select * from 业务资料库 where '
+'资料ID'+' = '+''''+'%'+edit1.text+'%'+'''';
最后这个分号要去掉. if 条件1 then
执行的程序段,如果只是一句,则后面不加要分号,否则用begin 程序段 end (也没有分号)
else begin //此处同理
end;
问题二: = 是精确查询 like是模糊查询 like '%查询条件%' 可以加前后%,查一下数据库的资料
问题三:在查询时,需要拼SQL语句,如果 trim(edit1.text)<>'' 时,你把id的查询条件加上,否则不加
问题四:这个没太清楚你的问题
问题五:可以将其点右键, control->send to back就在最后了
问题六:autosize是自动调节控件大小,indexname具体没注意过
问题七:
在 onkeypress事件中加入如下代码(可以自己确定想让它能输入什么):
if not(Key in ['0'..'9',#8,'-']) then Key := #0;
问题八:application.Terminate 而且没明白你指的真正退出是什么 ,一般只要主窗体close了,整个进程就关了,相当于程序退出了
问题九:界面自己多看看相关的程序
问题十:这个看我用什么控件