标题:查询语句新问题
只看楼主
yitingkai
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-4-26
 问题点数:0 回复次数:8 
查询语句新问题

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls;

type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
var sqlstr:string;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if radiobutton1.checked then
sqlstr:=sqlstr+'select 姓名 学号 from 学生 where 姓名='+''''+edit1.text+'''';
if radiobutton2.checked then
sqlstr:=sqlstr+'select 姓名 from 学生 where 姓名like'+''''+'%'+edit2.text+'''';
end;
end.

搜索更多相关主题的帖子: 语句 TRadioButton TEdit uses Forms 
2007-06-03 23:13
无情杀手
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-6-5
得分:0 
什么问题噢?
2007-06-05 19:52
songyang201
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2007-6-5
得分:0 

第一,似乎是全部的代码了,质疑sql是否执行了。

第二,如果可以执行,这个button肯定不能按第二次……

2007-06-06 15:45
zengziji
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-2-24
得分:0 

如果我没有理解错你的意思的话(没有编译过,应该没有问题)
if radiobutton1.checked then
sqlstr:='select * from 学生 where 学号 like '+quotedstr('%'+edit1.text+'%');
if radiobutton2.checked then
sqlstr:='select * from 学生 where 姓名 like '+quotedstr('%'+edit2.text+'%');
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.text:=sqlstr;
adoquery1.open;

[此贴子已经被作者于2007-6-8 0:40:27编辑过]

2007-06-08 00:37
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
得分:0 
你这样的程序肯定有问题,
如果两个radiobutton都选择,怎么办
另外。你的sqlstr是全局变量。程序将在执行第二次时候肯定抱错误。

大家都是朋友,有空就来坐坐!
2007-06-08 11:34
zengziji
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-2-24
得分:0 
以下是引用volte在2007-6-8 11:34:29的发言:
你这样的程序肯定有问题,
如果两个radiobutton都选择,怎么办
另外。你的sqlstr是全局变量。程序将在执行第二次时候肯定抱错误。

另外。你的sqlstr是全局变量。程序将在执行第二次时候肯定抱错误。---说的对
但是” 两个radiobutton都选择 “ 我没有见过这样的情况。

[此贴子已经被作者于2007-6-9 15:17:22编辑过]

2007-06-08 13:36
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
得分:0 
回复:(zengziji)以下是引用volte在2007-6-8 11:34:...

想不到并不代表别人会不会这么做。

要知道软件做出来是给别人用的。

如果你认为很愚蠢,很可笑的话,
说明你还没有真正的和你的客户交流过!
往往客户就是这样的误操作!


大家都是朋友,有空就来坐坐!
2007-06-08 22:23
zengziji
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-2-24
得分:0 

我没有说清楚,radiobutton在一个窗体中是只能选择一个的,不可能出现同时选择两个一上的问题

2007-06-09 15:18
gg525
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-8-20
得分:0 
sqlstr:=sqlstr+'select 姓名 学号 from 学生 where 姓名='+'''+edit1.text+''';
if radiobutton2.checked then
sqlstr:=sqlstr+'select 姓名 from 学生 where 姓名like'+'''+'%'+edit2.text+''';
2007-07-05 16:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-144621-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.241796 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved