Foxtable(狐表)用户栏目专家坐堂 → [灌水]狐表的保存是否在开挂


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

主题:[灌水]狐表的保存是否在开挂

帅哥哟,离线,有人找我吗?
qq121454970
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
[灌水]狐表的保存是否在开挂  发帖心情 Post By:2014/7/28 12:18:00 [只看该作者]

本帖纯属水贴,走过路过,千万不要难过

经测试:狐表保存1000行(新增行)(Access)耗时1.9秒 ,保存1000行(新增行)(SQL)耗时0.9-1.0秒
然而我用.net的OleDbConnectionOleDbCommand类操作,丫的竟然用了23秒之多(循环SQL执行,为返回主键,一行会执行2个SQL语句,也就是循环执行了2000次)
狐表还是比较给力的啊
[此贴子已经被作者于2014-7-28 12:19:40编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1731 积分:11255 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/7/28 12:20:00 [只看该作者]

是你的代码不合理

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


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
回复:(jspta)是你的代码不合理  发帖心情 Post By:2014/7/28 12:23:00 [只看该作者]

从我的理解来说,每保存一行,就促发了行的保存事件(如果是新增行,害的返回主键值,要知道,Access是不支持多SQL语句的),也就代表说,狐表也是循环执行SQL保存的,如果是新增行,从我的理解来说,也执行了2次事件,要么就是他的新增行的主键只是本地计算的
[此贴子已经被作者于2014-7-28 12:24:02编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1731 积分:11255 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/7/28 12:38:00 [只看该作者]

以下是引用qq121454970在2014-7-28 12:23:00的发言:
从我的理解来说,每保存一行,就促发了行的保存事件(如果是新增行,害的返回主键值,要知道,Access是不支持多SQL语句的),也就代表说,狐表也是循环执行SQL保存的,如果是新增行,从我的理解来说,也执行了2次事件,要么就是他的新增行的主键只是本地计算的
ACCESS不支持多SQL语句?你确定吗?我没有试过,但基本的SQL语句肯定没问题。还有SQL语句就算一条条插入,也很快,1000条也用不了几秒。关于主键值,可以重新加载一次表更新,这样也就相关于一条语句把。你可以参考LSY的关于SQL保存的一个例子


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


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
回复:(jspta)以下是引用qq121454970在2014-7-28 12...  发帖心情 Post By:2014/7/28 12:46:00 [只看该作者]

想法不错,我找找看,狐狸爸爸呢,也出来说一句啊图片点击可在新窗口打开查看

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


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

 回复5楼,你用.net的时候,代码不合理吧?

 

 保存数据的消耗,主要在连接数据库上,如果用事务或者一次性提交sql语句的话,速度会快几十倍的。


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


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
回复:(有点甜) 回复5楼,你用.net的时候,代码...  发帖心情 Post By:2014/7/28 15:03:00 [只看该作者]

我就OPen了一次,然后循环批量执行sql,执行完之后在Close的图片点击可在新窗口打开查看

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


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

 回复7楼,那就不可能这么慢。你好好检查一下你的代码。

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


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
回复:(有点甜) 回复7楼,那就不可能这么慢。你...  发帖心情 Post By:2014/7/29 8:02:00 [只看该作者]

好的,我晚上重写一个试试

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/7/29 8:51:00 [只看该作者]

拼接InSert Into或Update语句,明显要快于狐表。

但拼接的语句过长,又不执行。

 

几万行的数据,可以每次提交1000行,利用计时器、多线程,自动执行,还不影响做其他工作。


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