小编Pau*_*een的帖子

返回部分匹配值的记录

我正在尝试获取一个查询工作,它从表单控件获取值(有时只是字符串的第一部分).我遇到的问题是它只在输入完整字符串时返回记录.

即在姓氏框中,我应该能够输入gr,然后它会显示出来

绿灰格雷厄姆

但是目前它并没有提供任何无用的完整搜索字符串.

有问题的表单上有4个搜索控件,只有在填写框时才会在查询中使用它们.

查询是:

SELECT TabCustomers.*,
       TabCustomers.CustomerForname AS NameSearch,
       TabCustomers.CustomerSurname AS SurnameSearch,
       TabCustomers.CustomerDOB AS DOBSearch,
       TabCustomers.CustomerID AS MemberSearch
FROM TabCustomers
WHERE IIf([Forms]![FrmSearchCustomer]![SearchMember] Is Null
          ,True
          ,[Forms]![FrmSearchCustomer]![SearchMember]=[customerid])=True
      AND IIf([Forms]![FrmSearchCustomer].[SearchFore] Is Null
              ,True
              ,[Forms]![FrmSearchCustomer]![SearchFore] Like [customerforname] & "*")=True
      AND IIf([Forms]![FrmSearchCustomer]![SearchLast] Is Null
              ,True
              ,[Forms]![FrmSearchCustomer]![SearchLast] Like [customersurname] & "*")=True
      AND IIf([Forms]![FrmSearchCustomer]![Searchdate] Is Null
              ,True
              ,[Forms]![FrmSearchCustomer]![Searchdate] Like [customerDOB] & "*")=True;
Run Code Online (Sandbox Code Playgroud)

sql ms-access sql-like

4
推荐指数
2
解决办法
812
查看次数

VFPODBC非常慢

我正在使用MS Access 2003前端通过odbc访问由Visual Foxpro 9应用程序拥有的网络驱动器上的数据,而且它似乎速度令人难以置信 - 在一个特定的表中有大约1400条记录,并且它需要一个好的尽管在使用基本DBF查看器或表所属的应用程序时,加载Access接口的时间很短,但它是即时的.查询数据时,它比打开整个表视图更快,但仍然比我预期的要慢得多; 它访问的计算机位于同一网络上,目前通过应用程序访问的速度比网络托管的SQLServer慢,其上的记录数量是其上的10倍.

任何有关我可以尝试使用VFP ODBC链接来加速它并不明显的事情的建议将不胜感激.

编辑

谢谢Dave,目前,我正在玩一个试图让它在Access'查询选项卡中运行的查询...

查询现在需要大约4分钟才能运行..它返回一个包含10行信息的交叉表,基于大约230条记录的输入条件 - 我尝试过没有来自Group表的连接和字段,但速度差异可以忽略不计.

只是对它提出一些看法:

Allsales包含大约50个字段和15,000个记录Stock包含大约100个字段和500个记录组包含3个字段和8个记录.

SELECT allsales.type, allsales.branch, allsales.terminal, allsales.date, Sum(allsales.totalprice) AS SumOftotalprice, Sum(allsales.discamount) AS SumOfdiscamount, Sum(allsales.tender1) AS SumOftender1, Sum(allsales.tender2) AS SumOftender2, Sum(allsales.tender3) AS SumOftender3, Sum(allsales.tender4) AS SumOftender4, Sum(allsales.tender5) AS SumOftender5, Sum(allsales.tender6) AS SumOftender6, Sum(allsales.tender7) AS SumOftender7, Sum(allsales.tender8) AS SumOftender8, Sum(allsales.tender9) AS SumOftender9, Sum(allsales.tender10) AS SumOftender10, Sum(allsales.tender11) AS SumOftender11, Sum(allsales.tender12) AS SumOftender12, Sum(allsales.loypoints) AS SumOfloypoints, Count(allsales.type) AS Fuzz, groups.desc
FROM (stock RIGHT JOIN allsales ON stock.plu = allsales.plu) …
Run Code Online (Sandbox Code Playgroud)

ms-access odbc foxpro visual-foxpro

1
推荐指数
1
解决办法
985
查看次数

标签 统计

ms-access ×2

foxpro ×1

odbc ×1

sql ×1

sql-like ×1

visual-foxpro ×1