ODBC有两种主要的独立于开源平台的实现。它是iODBC和unixODBC。
考虑到Unix作为ODBC用户平台和特性,这两种实现之间真正的实际区别是什么?
发布于 2011-09-26 16:33:18
就像你知道的那样,我使用并为unixODBC做出了贡献,而我不使用iODBC。
Unicode支持
unixODBC遵循MS驱动程序管理器,并将SQLWCHAR编码为2字节UCS2。我相信iODBC使用wchar_t (这是基于试图在DBD::ODBC中支持iODBC )
游标库
unixODBC有,我不认为iODBC有。
应用程序支持
许多ODBC应用程序都支持unixODBC,例如,OpenOffice和来自Oracle、IBM的ODBC驱动程序。我对iODBC不太确定。
操作系统支持
自从苹果将iODBC加入之后,它一直是Mac电脑上使用最多的操作系统(尽管我认为它已经从Lion中删除了)。这两个版本都可以从源代码构建,并且大多数Linux发行版都打包了这两个版本(尽管不是Novell/Suse,它只发布unixODBC)。
线程安全
unixODBC是线程安全的,并且包括在不同级别保护句柄的标志。iODBC以前不是这样的(但现在可能已经改变了)。
支持
两者都有支持论坛(unixODBC有3个),不过我想说unixODBC的要活跃得多(我两个都在)。
许可
unixODBC是通用公共许可证和通用公共许可证。iODBC是LGPL/BSD
在实践中没有太大的区别,但我想你会发现unixODBC被更广泛地使用。
https://stackoverflow.com/questions/7548825
复制相似问题