公司做了一个系统,C/S模式,后台数据库access,功能有:数据采集;数据存储;数据上传。 
  流程:通过串口从仪表中采集数据,经过系统处理后,存储在本地access数据库,再通过另一个串口发送部分数据到显示屏,最后生成txt文件,上传至FTP。应用是超限检测点,过车即工作,对数据库读写最多一天可达2000次。
  补充:机器性能应该还可以,1G内存,CPU也可以。
  问题:access数据库理论存储量为2G,但现在情况是存储30M左右就严重影响整个系统运行效率,将access库清空后恢复正常。
  
  这都会是哪些方面的原因引起的。代码、SQL语句。。
  望各位高手不吝指教。

解决方案 »

  1.   

    换个mysql,或不嫌麻烦就整人sql server;
    你的现象表明你的程序没有问题;另外,你可以搞一个大点缓存机制,这样存的时候先写到缓存,然后缓存达到一定量再写到数据库,;
      

  2.   

    不会吧?
    才30M,应该没有太大影响才对啊!
    是不是设计上有问题?----------
    三易通软件(服装进销存软件,服装进销存管理软件,服装进销存管理系统,服装店管理软件,服装店管理系统,服装销售管理软件,服装销售管理系统,服装零售管理软件,服装零售管理系统,服装店软件,服装店收银软件)http://www.3etsoft.cn
      

  3.   

    参考二楼的
    access肯定会慢的
      

  4.   

    我的CMS 带几百M的Access 数据库也不慢。肯定是你的程序出错用了try语句,一但出错速度就会暴慢。
      

  5.   

    我的CMS 带几百M的Access 数据库也不慢。肯定是你的程序出错用了try语句,一但出错速度就会暴慢。
    ----------------------------------------------------
      不会在代码里一个TRY都没有吧。
      

  6.   

    [Quote=引用 3 楼 ydsunny 的回复:]不会吧?
    才30M,应该没有太大影响才对啊!
    是不是设计上有问题?系统是个小东西,不大,设计上感觉不会影响很大。呵呵
      

  7.   

    你通过什么访问Access数据库?
      

  8.   

    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=XX.mdb;Jet OLEDB:Database Password=xx
    OleDbConnection connection = new OleDbConnection(connectionString)