access数据库问题,我已经做好了数据表,怎么在窗体中建立查询? 50
在窗体中建立查询的选项,但是选项内容需要手动输入“编号”“分类”“名称”“部门”四个查询,请问该怎么弄?求教高人~~~~~~~~~...
在窗体中建立查询的选项,但是选项内容需要手动输入“编号”“分类”“名称”“部门”四个查询,请问该怎么弄?求教高人~~~~~~~~~
展开
3个回答
展开全部
你提问不明确,所以别人很难准确回答。
根据你的下面图表,我大概知道你遇到什么问题。你可能想根据自己建立的查询,通过“自动向导”来建立窗体,但总是出现其它提示。
我教你一个方法吧,根据“普通查询(不带条件或参数)”来建立窗体,总显得很乱(总是提示:请确定查看数据的方式,让你选择一个表,等等。死活不进入“纵向、表格、数据表”这一步,对吧)。你先给你的查询建立一个查询条件或参数,再根据这个带条件、参数的查询,通过“向导”来建窗体。建好窗体后,再把那个条件、参数删除,就行了。
比如建一个带条件、参数的查询:select 编号,分类,名称,部门 from XX表 where 编号=王八蛋
条件或参数可以乱写,然后建立窗体,再把后面的删除或修改(where 编号=王八蛋)
你试试,保证行。这应该是access的一个bug。
核心:根据不带条件、参数的查询来建立窗体,总TM乱套。必须依据一个带查询条件、参数的查询来建立窗体。
根据你的下面图表,我大概知道你遇到什么问题。你可能想根据自己建立的查询,通过“自动向导”来建立窗体,但总是出现其它提示。
我教你一个方法吧,根据“普通查询(不带条件或参数)”来建立窗体,总显得很乱(总是提示:请确定查看数据的方式,让你选择一个表,等等。死活不进入“纵向、表格、数据表”这一步,对吧)。你先给你的查询建立一个查询条件或参数,再根据这个带条件、参数的查询,通过“向导”来建窗体。建好窗体后,再把那个条件、参数删除,就行了。
比如建一个带条件、参数的查询:select 编号,分类,名称,部门 from XX表 where 编号=王八蛋
条件或参数可以乱写,然后建立窗体,再把后面的删除或修改(where 编号=王八蛋)
你试试,保证行。这应该是access的一个bug。
核心:根据不带条件、参数的查询来建立窗体,总TM乱套。必须依据一个带查询条件、参数的查询来建立窗体。
展开全部
在窗体的主体中建立一个查询按钮(工具箱的控件向导按钮必须开),选择记录导航中的“查找记录”即可。
查找范围项,可以选择你要查找的“编号”“分类”“名称”“部门”
匹配项:可以选择整个字段或者字段任何部位。
查找范围项,可以选择你要查找的“编号”“分类”“名称”“部门”
匹配项:可以选择整个字段或者字段任何部位。
更多追问追答
追问
我不太明白那些语句的应用,怎么弄呢?有没有什么别的办法?
追答
我回答你的是,不用输入任何一条语句的.完成是依靠向导来完成.
别的办法是用宏或者是模块,哪个比我告诉你的更加麻烦.
你试下我的办法,很简单,与WORD\EXCEL中的查找界面是一样的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var
sWhere:string;
begin
inherited;
sWhere:='';
if cxDateEdit1.Text<>'' then
sWhere:=' HM_RQ>='+''''+cxDateEdit1.Text+'''';
if cxDateEdit2.Text<>'' then
if sWhere<>'' then
sWhere:=sWhere+' and HM_RQ<='+''''+cxDateEdit2.Text+''''
else
sWhere:=' HM_RQ<='+''''+cxDateEdit2.Text+'''';
if cxTextEdit2.Text<>'' then
if sWhere<>'' then
sWhere:=sWhere+' and HM_BM like '+''''+cxTextEdit2.Text+'%'+''''
else
sWhere:=' HM_BM like '+''''+cxTextEdit2.Text+'%'+'''';
if sWhere<>'' then
begin
with adoq_hm_t do begin
Close; SQL.Clear;SQL.Add( 'select * from res_hr_rshm where 1=1 and '+sWhere); Open;
end;
end
else
begin
with adoq_hm_t do begin
Close;SQL.Clear;SQL.Add( 'select * from res_hr_rshm ');Open;
end;
end;
sWhere:string;
begin
inherited;
sWhere:='';
if cxDateEdit1.Text<>'' then
sWhere:=' HM_RQ>='+''''+cxDateEdit1.Text+'''';
if cxDateEdit2.Text<>'' then
if sWhere<>'' then
sWhere:=sWhere+' and HM_RQ<='+''''+cxDateEdit2.Text+''''
else
sWhere:=' HM_RQ<='+''''+cxDateEdit2.Text+'''';
if cxTextEdit2.Text<>'' then
if sWhere<>'' then
sWhere:=sWhere+' and HM_BM like '+''''+cxTextEdit2.Text+'%'+''''
else
sWhere:=' HM_BM like '+''''+cxTextEdit2.Text+'%'+'''';
if sWhere<>'' then
begin
with adoq_hm_t do begin
Close; SQL.Clear;SQL.Add( 'select * from res_hr_rshm where 1=1 and '+sWhere); Open;
end;
end
else
begin
with adoq_hm_t do begin
Close;SQL.Clear;SQL.Add( 'select * from res_hr_rshm ');Open;
end;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询