Access 2010,Win7 64位,硬件:G2020+8Gb。
首先问题:如下的SQL语句(ID_No是递增的,现在需要查询最近3项数据,每个字段的和)
SELECT Sum(AAA), Count(BBB), Sum(CCC) FROM tb_test where ID_No in (select top 3 ID_No from tb_test order by ID_No desc)
数据在几百条时,可以运行,但是会出现 Access.exe进程占用过高的CPU, 数据超过5W条时,Access会出现假死。
接下来分析原因:
1、top 语句 一旦运行就造成CPU占用率高,但可以正常运行。
2、order by aaa desc语句 access 2000条数据时, 程序假死。
3、top 3 ******** order by aaa desc, 就会出现本题最开始的问题。
请各位达人赐教,谢谢 。。
谢谢 caozhy大哥,
其实我对数据库的要求也不高,也就 两三个表,除了写入数据,查询语句也就是这一句,每天新增数据大概也就是几千条。 想到功能比较简单,Access比较小巧灵活,使用时不需要额外的安装配置(软件不是给别人用的)。就选用了Access,但是这位老兄一句话就否定了access,这样让我很为难,希望能就access给点建议。 难道Access这点任务都胜任不了??
Access,这个就不用看了,Access做什么CPU都高。大量数据用SQL Server,并且加索引。
谢谢 caozhy大哥,
其实我对数据库的要求也不高,也就 两三个表,除了写入数据,查询语句也主要就是这一句,每天新增数据大概也就是几千条。 想到功能比较简单,Access比较小巧灵活,使用时不需要额外的安装配置(软件不是给别人用的)。就选用了Access,但是这位老兄一句话就否定了access,这样让我很为难,希望能就access给点建议。 难道Access这点任务都胜任不了??
你的数据算多的了,你为什么不用存储过程啊;存储过程应该能解决一些你的问题;还有就像第一个回答的,你为什么用Access呢,它只适合处理少量的数据的,如果你
处理的数据不多用它可以,但是多的话用它似乎就不合适的