我意识到这在某种程度上是一个意见问题,但我想听听一些人的见解。
我在VBA和VB.NET中工作,目前使用ADO在PostgreSQL数据库中插入、更新和选择记录,使用Excel作为用户界面。ADO工作得很好,但似乎MS将ADO.NET作为更好的工具,但我的问题是,我必须创建几乎整个PostgreSQL数据库,作为内存中的数据集,我认为这是不必要的,因为那时我只是完全复制服务器上已经存在的数据,而且内存中保存了很多东西。
也就是说,每个人对于ADO和ADO.NET的想法是什么?考虑到在内存中必须重新创建几乎整个数据库的情况,ADO.NET才能做ADO当前所做的事情?在今天的某些情况下,ADO是否仍然是一个相关的解决方案?还有其他人会推荐的替代技术吗?
发布于 2016-05-27 18:40:10
使用能很好地使用你使用的语言的技术。
ADODB库可以很好地使用vb6和vba,所以当您在VBA中编写代码时使用它,它比.NET早了很多年。
ADO.NET是.net的等价物;在用vb.net或c#编写时使用它,就像那样简单。
ADO只与VBA与您的情况相关,在VBA中使用ADO.NET听起来像很多无用的体操。
“在内存中重新创建整个数据库”听起来非常像一个X问题,我非常怀疑这就是您想要实现的--也许您是指对象/关系Mappers (ORM),比如实体-框架,或者更过时的技术(尽管仍然是后期ADO.NET),比如linq到sql?无论哪种方式,ORM都对它正在使用的数据访问技术进行抽象,所以如果您想在ADODB上实现VBA中的数据访问技术,那么就去做吧!如果您想要重新发明轮子,并在VB.NET over ADO.NET中实现一个轮子,..it可能会很有趣。但我怀疑这是你想要做的。
微软正在“推动”ADO.NET作为一个“更好的工具”,因为.NET是最新的,它正在被积极维护,并且它在不断发展,..and而不是VBA --至少据我所知。现在看看在线阅读的日期,因为微软正在“推动”Linq到SQL作为一个比ADO.NET更好的工具,然后开始将实体框架作为一个“更好的工具”而不是Linq到SQL。
https://stackoverflow.com/questions/37489977
复制相似问题