大家讨论一下,odbc、ado、dao、ole db各自的优缺点。
还有,嵌入式sql是指什么,是用哪种连接实现的?

解决方案 »

  1.   

    对于Acess数据库,ado连接是最简单方便的,速度也是最快的,而且用它来连接Acess可以不用用户在控制面板中注册数据库
      

  2.   

    主要考虑ado和ole db。ado代码短小简单,但性能不高。oledb性能好,但是使用复杂,代码冗长。如果你的应用程序有很多客户连接,同时处理的话要最好用oledb。如果对性能要求不是很高的话用ado,可以节省很多时间
      

  3.   

    to AkiraChing(水银):不可否认,大多数数据库连接都是工作在odbc驱动上的,何言过时?
      

  4.   

    不错,以前的程序很多都是基于odbc的,而且odbc很早,比dao都早,微软以前也很推崇odbc的解决方案,但是现在微软推广的是ado,事实上odbc已经过时了,不过在微软还提供支持的时候,你仍然可以用啊,而且技术成熟
      

  5.   

    ODBC编程很方便,但访问某些数据库时速度太慢,如Sybase,Oracle等。
      

  6.   

    现在是ADO的时代,但Microsoft以外数据库不一定带这个接口。
    如果是和Ms以外的数据库连接,用ODBC,它速度相对要慢一些,但很成熟。
    DAO是个劣质品,它只能进行本地连接,如果要用在网络就要配合RDO一起使用。
      

  7.   

    微软已经不对dao进行支持了,dao已经属于快淘汰的技术了
      

  8.   

    ODBC 没有过时。OLEDB 是在 Direct DB 层面上访文数据库的,不是工作在 ODBC 驱动基础上的。不知道我理解得是否正确,我认为 ADO 是一组组件对象。即便用 ADO 也可以用 ODBC 方式访问数据库的。
    而 OLEDB 和 ODBC 一样,都是数据库驱动技术。只是 ODBC 是更抽象一层次的开放的协议标准,符合 ODBC 标准协议的数据库驱动技术都能按照 ODBC 方式使用,包括 OLEDB 的各种驱动——for sql/oracle 等等。我理解它们之间关系由上之下是:
    DAO/RDO/ADO/JDO 数据库访问组件/类
    ODBC/JDBC 众多数据库访问驱动软件/组件所共同支持的开放标准
    OLEDB 微软的数据库驱动技术
    >对于Acess数据库,ado连接是最简单方便的,速度也是最快的,而且用它来连接Acess可以不用用户在控制面板中注册数据库
    ADO 访问数据库的 Connections String 中可以调用本机注册的 DSN(就是你说的在控制面板中设置的“东西”),可以调用文件型 DSN,甚至可以把 DSN 的内容写在 ConnectionString 里面——实际上,可以用ADO调用支持ODBC的数据库驱动,也可以直接调用OLEDB的数据库驱动——比如可能调用了 MS ODBC for Oracle,或者可能是 Oracle OLEDB for Oracle,也可能是 MS OLEDB for Oracle。呵呵,用ADO不说明用的一定就是ODBC或OLEDB,但ADO本身不“访问”数据库,而是数据库驱动在做这事儿。
      

  9.   

    to piggybank(吞硬币的小猪) :那也就是说,odbc 和 oledb 是运行效率最高的了?。
      

  10.   

    OLEDB 比 ODBC 效率高
    按照微软的设计意图,ADO 比 DAO 更适合网络应用
      

  11.   

    ADO比ODBC效率高?请指教。
    不过DB_LIB连SQL到是很快的。
      

  12.   

    ADO是很方便的,如果VB+ADO那应该是最简单的吧
      

  13.   

    严格的说应该是OLE DB最好,但是ADO为OLE的上层接口,所以用ADO比较好,当然,如果用OLE也可以了,但是要多写很多代码。现在的数据库,包括非微软的Oracle ,Ifix等等也都支持ADO.
    至于ODBC别的都好,就是速度太慢。
    其它的DAO好像用的人不多,不太了解!
      

  14.   

    从并发性最好的角度出发,哪一种最好呢?我试过ado,在两个线程中同时执行一个存储过程时,两其中有一个会执行失败,不知个位大虾有没有相同经历。