Access交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 活动
  • 关于

技巧

ACCESS数据库

启动/设置/选项/背景

修复/压缩

安全/加密/解密

快捷键

版本升级/其它等

数据表

命名方式/设计规范

表设计

查询

Sql语言基础

选择查询

更新查询

删除查询

追加查询

生成表查询

交叉表查询

SQL特定查询

查询参数

查询综合应用

界面/窗体/控件

标签

文本框

命令按钮

组合框/列表框

选项组/复选框/选项按钮

选项卡

子窗体

窗体本身/综合应用

其它

报表打印

报表设计

高级报表

模块/函数/VBA/API/系统

VBA基础

内置函数

调试/跟踪/Debug

模块/类模块

API/COM/系统相关

字符数字日期

网络通信游戏

加密解密安全

文件处理

经典算法

宏/菜单/工具栏/功能区

宏/脚本

菜单/工具栏

功能区/Ribbon

图表/图形/图像/多媒体

图表

图形/图像

音频

视频/动画

DAO/链接表/ADO/ADP

DAO/链接表/ODBC

ADO/RDO

ADP

ActiveX/第三方控件/插件

Treeview树控件

ListView列表控件

Toolbar工具栏控件

微软其它控件

Dbi-Tech

CodeJock

Grid++Report

FastReport

ComponentOne

加载项/插件/Addin

OFFICE集成/导入导出/交互

Excel导入导出/交互

Word导入导出/交互

PPT交互

Outlook控制/邮件

Text文本文件/INI/CSV

PDF/SWF/XML格式

CAD格式

Sharepoint/其它Office

SqlServer/其它数据库

表

视图

存储过程/触发器

函数

用户/权限/安全

调试/维护

SqlServer其它/综合

发布/打包/文档/帮助

开发版/运行时

打包/发布/部署

开发文档/帮助制作

Access完整行业系统

采购管理系统

销售管理系统

仓库管理系统

人力资源管理HRM

CRM管理系统

MRP/ERP管理系统

BRP/流程优化

其它管理系统

心得/经验/绝招
其它/杂项
Excel技巧

Excel应用与操作

Excel开发编程

Word技巧

Word应用与操作

Word开发编程

Outlook技巧

Outlook应用与操作

Outlook开发编程

热门文章

  • 如何在任意位置插入记录
  • 利用ADOX获取Acces..
  • 如何建立IP地址库并加以搜..
  • Access中使用快捷方式..
  • 隐藏表的一种特殊方法
  • 解决SELECT TOP ..

最新文章

  • Access用代码创建表
  • access表的设计技巧
  • access实现自动编号从..
  • Access2010出现“..
  • 使用输入掩码控制数据输入格..
  • 索引和主键的异同

联系方式

Access交流网(免费Access交流)

QQ:18449932 

网  址:www.access-cn.com

当前位置:首页 > 技巧 > 数据表 > 表设计
表设计

ACCESS的真假:三、往一个表中插入10万条记录的速度小于插入1万

正 文:

下面这个贴子中讨论了很多access中的一些猜想假设。

access或其它数据库操作效率问题.欢迎讨论

 

引用 28 楼 wwwwb 的回复::
比如插入10万条记录,速度 <插入1万条记录;
面对这个问题,第一想法上,在一个mdb文件插入过多的记录,自然会导致MDB文件增大,需要不停地向操作系统申请磁盘空间的分配。因故会导致速度慢。但再仔细一想好象也没什么道理,毕竟加10000条也要申请10000条记录的空间,速度上应该没什么影响。毕竟access中又不会去用什么redo / undo log.

于是便做了个简单的测试如下以对这个猜想证实。

新建空的 t.mdb 文件,创建表 table1 (id int primary key,cname varchar(10)

然后新建 模块,内容如下。

view plaincopy to clipboardprint?
Option Compare Database  
Option Explicit  
 
 
Public Sub t1(nRowCnt As Long)  
    Dim i As Long 
    Dim conn As ADODB.Connection  
    Set conn = CurrentProject.Connection  
      
    For i = 1 To nRowCnt  
        conn.Execute "insert into table1(id,cname) values(" & i & ",'" & i & "')" 
    Next i  
      
      
End Sub 
 
 
Public Sub t()  
    CurrentProject.Connection.Execute "delete from table1" 
      
    Debug.Print "t10000 start.", Now  
    Call t1(10000)  
    Debug.Print "t10000 end  .", Now  
      
    CurrentProject.Connection.Execute "delete from table1" 
      
    Debug.Print "t100000 start.", Now  
    Call t1(100000)  
    Debug.Print "t100000 end  .", Now  
      
End Sub 
Option Compare Database
Option Explicit


Public Sub t1(nRowCnt As Long)
    Dim i As Long
    Dim conn As ADODB.Connection
    Set conn = CurrentProject.Connection
   
    For i = 1 To nRowCnt
        conn.Execute "insert into table1(id,cname) values(" & i & ",'" & i & "')"
    Next i
   
   
End Sub


Public Sub t()
    CurrentProject.Connection.Execute "delete from table1"
   
    Debug.Print "t10000 start.", Now
    Call t1(10000)
    Debug.Print "t10000 end  .", Now
   
    CurrentProject.Connection.Execute "delete from table1"
   
    Debug.Print "t100000 start.", Now
    Call t1(100000)
    Debug.Print "t100000 end  .", Now
   
End Sub

运行 t() 结果如下:
t10000 start.  5/14/2009 7:53:10 PM
t10000 end  .  5/14/2009 7:53:29 PM
t100000 start.  5/14/2009 7:53:29 PM
t100000 end  .  5/14/2009 7:56:06 PM


t10000 .  19s 
t100000 .  157 s

试验结论:

插入10万条的总时间显然比插入1万长(157s>19s),但速度显然快(157/100000<19/10000)

看来实践是检验的唯一标准啊。



发布人:ACMAIN_C…-blog.csdn.net  
分享到:
点击次数:  更新时间:2009-09-12 10:04:03  【打印此页】  【关闭】
上一条:ACCESS的真假:四、"SELECT * INTO 工作表 FROM 临时表" 比 "  下一条:判断空值或空字符串五法比较



相关文章

  • • Access用代码创建表
  • • access表的设计技巧
  • • access实现自动编号从1开始排序且不中断
  • • Access2010出现“错误一对多” 调试解决办法
  • • 使用输入掩码控制数据输入格式
  • • 索引和主键的异同
  • • “排队不长,只是很粗”——浅谈化宽为长
  • • Access数据表能做什么

热门文章

  • [2009-04-06] 如何将文件保存在OLE字段里(OLE写入/读出)?access数据库
  • [2008-11-25] 如何解决导出DBF时“字段将不能置于记录中”错误?记录过大错误access数据库
  • [2005-02-04] 如何将数据表导出备份到excel表格access数据库
  • [2004-06-14] access中数据表的自动重新联接access数据库
  • [2005-02-04] 自动编号字段的值能不从 1 开始吗?access数据库
  • [2008-12-18] 对一个加锁的表进行解锁access数据库

热门产品

公司动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图

Access交流网 版权所有 1999-2018 粤ICP备10043721号

QQ:18449932

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2023  www.metinfo.cn