Foxtable(狐表)用户栏目专家坐堂 → [求助]换数据库


  共有2111人关注过本帖树形打印复制链接

主题:[求助]换数据库

美女呀,离线,留言给我吧!
OKK
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
[求助]换数据库  发帖心情 Post By:2018/4/2 20:59:00 [只看该作者]

设计了HTTP网页注册和登录

当注册信息过多时,请问如何切换数据库来保存和读取?


(现在已经使用了SQL数据库连接了,但不知道如何在使用中自动切换数据库)

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/2 21:08:00 [只看该作者]

什么样算是“注册信息过多”?有必要切换数据库么?

 回到顶部
美女呀,离线,留言给我吧!
OKK
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
  发帖心情 Post By:2018/4/2 22:03:00 [只看该作者]

我的意思是切换到另一个数据表

因为现在客户信息表已经有几十万行了,打开项目也很困难

就算使用需要时再加载的方法也不行,后面十万行的数据还是无法顺利加载

这个时候如果可以在使用中切换到另一个数据表,那问题是不是就可以解决了?

但在狐表,如果要切换数据表,就得先把数据表设计好

那么,如果数据达到上千行,甚至更多的时候,就得预先设计几百个甚至上千个数据表

就算预先设计好上千个数据表,狐表项目也未必能打得开



请问如何解决这个问题?





 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/2 22:17:00 [只看该作者]

按需加载、分页加载。有必要一次性全部加载么,用到什么数据再加载什么数据:http://www.foxtable.com/webhelp/scr/1933.htm

 回到顶部
美女呀,离线,留言给我吧!
OKK
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
  发帖心情 Post By:2018/4/2 22:18:00 [只看该作者]

就是说设计了一个网站,用户在网站注册,录入信息到狐表,,,,,如果要登录,就在狐表里读取,,,,所以用户只会越来越多,要保存的数据也会越来越多

 回到顶部
美女呀,离线,留言给我吧!
OKK
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
  发帖心情 Post By:2018/4/2 22:23:00 [只看该作者]

分页加载就是不行啊

打开项目的时候我只打开几十行,所以打开是没问题的

但问题是用户在网站登录,需要读取狐表的数据的时候,,,,有些用户的数据是保存在第三十几万行里面的,这个时候其实也只是加载这几行的数据,但也加载不到

前面的数据就能加载,越往后,数据就越慢



 回到顶部
美女呀,离线,留言给我吧!
OKK
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
  发帖心情 Post By:2018/4/2 22:27:00 [只看该作者]

就是说,比如:加载第十万行的数据没问题,加载第二十万行的数据有点慢,加载第三十万行的数据更慢,每次都是加载一行或几行而已,但也是越往后的数据,加载就越慢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/2 22:59:00 [只看该作者]

不可能的。查询第一行的数据和查询第第三十万行的数据速度完全一样的。只需要查询一行的数据即可,难道你还一次性把前面的30万行记录也取出来吗。人家几亿行的数据一样超常使用。如果只取一行的数据源也慢,给表加上适当的索引,给经常使用的查询条件列加上索引

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/3 9:25:00 [只看该作者]

一般,不需要把所有数据加载出来的,需要查询的时候,直接find或者sqlfind查找即可,sqlserver处理几十万行数据是区区小问题。


 回到顶部
美女呀,离线,留言给我吧!
OKK
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:4268 威望:0 精华:0 注册:2016/11/22 19:30:00
  发帖心情 Post By:2018/4/3 9:26:00 [只看该作者]

@有点蓝

其实索引最大的作用,是不是减少遍历的时间,准确查询到对应的行?

我的设计是,按编号查找的,我这样不是应该最快吗?


With DataTables("信息记录表")
    .LoadFilter = "[编号] =" &  4500000  '到200万行开始慢,到300万行很明显,到450万行基本上要等5-10秒,有时会直接卡死
                                                         (目前数据表不只几十万行差不多有500万行了)
    .LoadTop = 50
    .Load()
End With


 回到顶部
总数 12 1 2 下一页