起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3455|回复: 11

[结贴] baasdata设置的limit为-1报语句错误

[复制链接]

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
发表于 2017-6-12 10:19:57 | 显示全部楼层 |阅读模式
baasdata设置的limit为-1报语句错误。设置为别的就不会,这是为什么。
如果不设置为-1,我通过find函数就找不到想要的数据,这怎么解决啊,
发表于 2017-6-12 13:17:56 | 显示全部楼层
报错信息是什么呢??
limit为-1 表示 一次性 查询所有 数据!不分页
如果数据量大!不建议这样查询!

如果你只是想查询符合条件的数据!可以使用data.setFilter('filter','条件');
设置过滤提交后端查询!
find方法是全端查询!需要把所有数据查出来才行!
http://docs.wex5.com/wex5-ui-question-list-2031/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
 楼主| 发表于 2017-6-13 15:07:51 | 显示全部楼层
liangyongfei 发表于 2017-6-12 13:17
报错信息是什么呢??
limit为-1 表示 一次性 查询所有 数据!不分页
如果数据量大!不建议这样查询!

我用setFilter设置好过滤条件,然后refreshdata(),然后再find查到的数据是空的。这是为啥?
是不能和find一起用吗?如果不用find我如何得到我想要的数据。
回复 支持 反对

使用道具 举报

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
 楼主| 发表于 2017-6-13 15:31:41 | 显示全部楼层
hjn090301 发表于 2017-6-13 15:07
我用setFilter设置好过滤条件,然后refreshdata(),然后再find查到的数据是空的。这是为啥?
是不能和find ...

我这设置的setFilter不管事啊,当我设置的过滤参数是数据表中前20条时,在这样界面可以查到数据,但换到这个界面在查询就会崩溃。如果参数是前20条之外的不管是什么情况都没有数据。郁闷啊,也不知道是哪写的不对。

这个界面有数据

这个界面有数据

这个界面就会崩溃

这个界面就会崩溃
回复 支持 反对

使用道具 举报

发表于 2017-6-13 16:39:54 | 显示全部楼层
hjn090301 发表于 2017-6-13 15:31
我这设置的setFilter不管事啊,当我设置的过滤参数是数据表中前20条时,在这样界面可以查到数据,但换到 ...

setFilter设置好过滤条件,然后refreshdata(),然后
试试data.count() 是多少??
setFilter 中的过滤条件就是sql 语句中where 条件!
你把这个字符串打印一下!然后自己在数据库管理工具中执行sql 语句,
使用这个where 条件
能否查询到数据呢??
如果可以说明条件没问题!


qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
 楼主| 发表于 2017-6-13 17:07:03 | 显示全部楼层
本帖最后由 hjn090301 于 2017-6-13 17:11 编辑
liangyongfei 发表于 2017-6-13 16:39
setFilter设置好过滤条件,然后refreshdata(),然后
试试data.count() 是多少??
setFilter 中的过滤条件 ...

data.count()是20,我在数据库管理工具中执行是可以查到数据。
正常过滤成功不应该是20吧,根据我的情况,过滤完应该只有1条。我是一个单击事件,执行过滤刷新。baasData的autoLoad设置的是FALSE
回复 支持 反对

使用道具 举报

发表于 2017-6-13 18:12:47 | 显示全部楼层
hjn090301 发表于 2017-6-13 17:07
data.count()是20,我在数据库管理工具中执行是可以查到数据。
正常过滤成功不应该是20吧,根据我的情况, ...

list组件的 autoLoad 也设置为false
除了你的js代码 可以设置过滤提交刷新!其他地方不要刷新data数据!
如果有20条,说明你设置的过滤条件没起作用呗!

baasdata使用setFilter  和 refreshData
如果条件正确!就能查出符合条件的数据的!
你先打印一下条件字符串!
自己使用sql语句执行这个条件!正常吗?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
 楼主| 发表于 2017-6-13 18:22:57 | 显示全部楼层
liangyongfei 发表于 2017-6-13 18:12
list组件的 autoLoad 也设置为false
除了你的js代码 可以设置过滤提交刷新!其他地方不要刷新data数据! ...

sql语句执行这个条件正常,可以查到数据的。我把autoload都设置为FALSE了,还是不行。
回复 支持 反对

使用道具 举报

发表于 2017-6-13 18:30:14 | 显示全部楼层
hjn090301 发表于 2017-6-13 18:22
sql语句执行这个条件正常,可以查到数据的。我把autoload都设置为FALSE了,还是不行。 ...

setFilter代码怎么写的??确定字符串和条件是正确的吗
  1. var data=this.comp('dataXid');
  2. data.setFilter('filter1',"ID='值'");
  3. data.refreshData()
复制代码


只要条件正确查询绝对没问题!
既然查询不正确就是条件设置有问题!

你的queryAction 是标准的queryAction 吧!
不是自定义action 吧!
baasData 组件中设置的对吧!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

43

主题

159

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
QQ
 楼主| 发表于 2017-6-14 13:57:01 | 显示全部楼层
liangyongfei 发表于 2017-6-13 18:30
setFilter代码怎么写的??确定字符串和条件是正确的吗

之前用的是自定义action,查询不到,后来改为queryActoin可以查询到了。
但我另外一个数据表过滤执行失败,是标准的queryActoin。
提示action执行失败,SQL执行失败,SQL:SELECT * FROM device_info WHERE ((rowid = 10536 ) ) LIMIT 0,20
我在sql管理工具执行上述语句是可以查到数据的啊。这是为啥?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-27 19:45 , Processed in 0.061824 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表