ODBC/OLE DB/ADO之比较
俺是工控行业,以前写过一个 DCS 到通用数据库的数据服务程序,采用了 ODBC API(未用 MFC ODBC)
因为要考虑到需兼容多种通用数据库,直接采用 Update 和 Insert 语句写数据库,未进行任何优化(如参数化 SQL 语句):
采用 DB2 时,Update 或 Insert 约为200条/s,
采用 SQL Server、Access、FoxPro ,Update 或 Insert 约为400条/s,
由于 DCS 数据常多达万个,其性能无法达到要求.
问:
1)如果采用 OLE DB 或 ADO 的方式(不经过 ODBC,而直接访问数据库的 OLE DB 驱动),速度会不会有数量级的提升?
2)如果采用 ADO,由于MDAC版本过多,在发行时是不是需要安装特定版本的MDAC?
3) 如要采用 OLE DB + ATL 方式,发行时是不是就不需要安装 MDAC?
4) 俺星期天跑遍了南京市的书店,未找到详细讲述 VC 下 OLE DB 编程的书籍,在网上也找不到多少相关资料,这又是为什么?
5) 俺是工控行业,做的软件应尽可能是绿色软件(不然用该软件的同事们会骂我的),用 OLE DB 后可不可以不制作安装程序?