|
本帖最后由 yth0 于 2017-11-26 11:22 编辑
请教大家,
我用的一个画图软件AD的器件库,需要连接数据源,数据源有两种选择,Excel和Access。Excel填写和修改数据非常方便,可以整列拖拽复制,可以用很多公式来简化工作等等。但用Excel的话,AD打开链接是独占式的,无法在打开AD的同时编辑修改Excel文件,并且考虑到Excel查询速度也可能慢,所以数据源选用Access。但Access中数据录入和修改维护等远不如Excel方便。以前是在Access里面找人帮忙写了一个小程序,这个小程序查找和Access本身在同一路径下的同名文件的Excel工作薄,然后通过类似下面的SQL查询语句建立查询表,工作薄里的每个工作表(除了第一个表)都对应建立一个查询表,这样excel更改后,可以实时更新。
SELECT * FROM [Excel 8.0;Database=\\10.10.20.12\元件库\元件信息库\Temp.xlsx].[BRIDEG$];
但后来发现有个问题,通过SQL查询的,我在AD中操作的时候,每次都要通过SQL查询excel,速度太慢了,特别是表格太大,操作比较卡。新版本的AD就更卡的要命。
我测试了一下,如果我不是通过查询或者链接的方式,而是把excel的内容直接导入到Access中,在AD中操作速度快了很多。但这样的话,添加或者修改就需要在Access中操作,远远不如excel中方便。
因为修改和更新数据的内容也比较频繁,所以我希望数据的录入和修改能在Excel中操作,并且可以利用Excel中的各种函数公式啥的,Excel中操作完数据后,最好能自动实时更新到Access中,就是时刻保证Excel和Access里面的完全一样。如果实在无法做到自动更新,在Excel中做个简单的操作也行,像弄个按钮,按一下就导入到Access,反正尽可能简单方便灵活的操作。
另外,如果Access中如果有主键,是不是查询速度要快一些,如果这样的话,程序能否把“智能码”这一列设为主键?
|
|