Access数据库怎么设置不打印标题?Access数据库打印的时候,想要设置不打印标题,该怎么设置呢?下面我们就来看看Access不打印标题的方法,需要的朋友可以参考下......
2023-01-15
完全一样的Access查询,直接找开或DAO打开结果正确,但使用ADO代码打开则结果不正确
就是查询如果比较复杂的话,通过ADO获取这个查询的记录的时候,有些字段的值全部是空的
如果用Access双击打开这个查询,里面的值又是可以计算出来的,最后我只有手工的将查询的结果转存到表里,然后读表,好坑
找了个Access实例( 问卷扣分查询 与ADO代码对比)
查询与ADO代码对比的结果
查询的详细SQL视图里的语句如下:
SELECT 问卷扣分.网点代码, IIf((问卷选项.K0 Like '*4*')+(问卷选项.K0 Like '*5*')+(问卷选项.K0 Like '*6*'),-1,IIf(IIf(IsNull(问卷扣分.K0),0,问卷扣分.K0)+IIf(IsNull(问卷扣总分.K0),0,问卷扣总分.K0)<0,IIf(IsNull(问卷扣分.K0),0,问卷扣分.K0)+IIf(IsNull(问卷扣总分.K0),0,问卷扣总分.K0),0)) AS K0 FROM 问卷扣分 INNER JOIN (问卷选项 INNER JOIN 问卷扣总分 ON 问卷选项.网点代码 = 问卷扣总分.网点代码) ON 问卷扣分.网点代码 = 问卷扣总分.网点代码;
而使用ADO VBA代码 如下:
Public Sub ff() Dim rs As New ADODB.Recordset rs.Open "Select 网点代码,K0 From 问卷扣分查询1", CurrentProject.Connection Do Until rs.EOF Debug.Print rs.Fields(0).Value, rs.Fields(1).Value rs.MoveNext Loop rs.Close End Sub
但ADO获取的结果不对。
经过分析,原来是 ADO 的SQL 中的通配符必须 使用 % ,而不是使用 *
1. 解决办法一:将查询中的 * 改为 % ,则通过 ADO调用正常 (tmtony)
SELECT 问卷扣分.网点代码, IIf((问卷选项.K0 Like '%4%')+(问卷选项.K0 Like '%5%')+(问卷选项.K0 Like '%6%'),-1,IIf(IIf(IsNull(问卷扣分.K0),0,问卷扣分.K0)+IIf(IsNull(问卷扣总分.K0),0,问卷扣总分.K0)<0,IIf(IsNull(问卷扣分.K0),0,问卷扣分.K0)+IIf(IsNull(问卷扣总分.K0),0,问卷扣总分.K0),0)) AS K0 FROM 问卷扣分 INNER JOIN (问卷选项 INNER JOIN 问卷扣总分 ON 问卷选项.网点代码 = 问卷扣总分.网点代码) ON 问卷扣分.网点代码 = 问卷扣总分.网点代码;
相关文章
Access数据库怎么设置不打印标题?Access数据库打印的时候,想要设置不打印标题,该怎么设置呢?下面我们就来看看Access不打印标题的方法,需要的朋友可以参考下......
2023-01-15
Access数据库报表怎么设置四页打印?Access中的报表想要打印成四页的效果,该怎么对打印进行设置呢?下面我们就来看看详细的教程,需要的朋友可以参考下......
2023-01-15
access分割窗体和空白窗体怎么创建?access中想要创建窗体,该怎么创建分割窗体和空白窗体呢?下面我们就来看看详细的教程,需要的朋友可以参考下......
2023-01-15
Access数据库表格怎么使用信纸进行打印?Access表格打印的额时候,想要使用信纸打印,该怎么设置呢?下面我们就来看看详细的教程,需要的朋友可以参考下......
2023-01-15