本机与ODBC数据库连接
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了本机与ODBC数据库连接相关的知识,希望对你有一定的参考价值。
我知道有些数据库在R(例如mysql)中有本机支持,但您可以使用RODBC连接到其他数据库,如MS SQL Server。使用本机驱动程序与RODBC进行读/写操作可以提高多少速度? R中有哪些其他DB有本机驱动程序?阅读速度是否比一般写作更快或更慢?
如果您对SQL Server特别感兴趣,下面的参考文章有点过时,但我想它可能仍然存在。
Using ODBC with Microsoft SQL Server
ODBC作为Native API的性能
关于ODBC的一直谣言是它本身比原生DBMS API慢。这种推理基于以下假设:必须将ODBC驱动程序实现为本机DBMS API上的额外层,将来自应用程序的ODBC语句转换为本机DBMS API函数和SQL语法。与将应用程序直接调用到本机API相比,此转换工作增加了额外的处理。对于通过本机DBMS API实现的某些ODBC驱动程序,这种假设是正确的,但Microsoft SQL Server ODBC驱动程序不是以这种方式实现的。
Microsoft SQL Server ODBC驱动程序是DB-Library的功能替代品。 SQL Server ODBC驱动程序以与DB-Library DLL完全相同的方式使用底层Net-Libraries。 Microsoft SQL Server ODBC驱动程序不依赖于DB-Library DLL,如果客户端上甚至不存在DB-Library,则驱动程序将正常运行。
微软的测试表明,基于ODBC和基于DB库的SQL Server应用程序的性能大致相同。
- 这是一个经验问题,那么为什么不为你感兴趣的组合测量呢?
- 公共代码没有隐藏,那你为什么不算一下CRAN的其他数据库接口呢?仅对于DBI,我们有SQLite,MySQL,Postgresql,Oracle;对于自定义数据库后端,有像Vhayu这样的东西。
- 存在专业论坛,为什么不问r-sig-db?
- 最后,只要有API并且需要人们倾向于将两者结合起来。我已经为两个高度专业化和快速后端编写了两个不同的(工作中未发布的)软件包。
以上是关于本机与ODBC数据库连接的主要内容,如果未能解决你的问题,请参考以下文章