欢迎大家光临【无师自通-教程网】您的到来是我们的荣幸。本站提供
photoshop教程
,
ps教程
,
flash教程
,
cad教程
,
网页制作教程
,
excel教程
,
asp教程
,
vb教程
,
3d教程
,
c语言教程
,
html教程
,
coreldraw教程
,
dreamweaver教程
,
java教程
,
3dmax教程
等各种教程为主题的内容和服务,相信您会在这里找到您所需要的东东。无师自通伴您一生-谢谢您的光临!!
网站地图
设为首页
简繁切换
加入收藏
栏目待定
留言本站
您现在的位置:
无师自通-教程网
>>
操作系统
>>
Linux
>>
数据库
>> 教程正文
没有公告
图形图像教程
photoshop
Flash
3DS Max
CorelDraw
Fireworks
Illustrator
Maya
AutoCAD
网络应用教程
局域网教程
综合布线
系统集成
无盘网络组建
网络产品资料
网络风险评估
光纤通信
网络接入
程序设计教程
C语言教程
vb教程
C#教程
VC语言教程
C++教程
Java教程
数据库教程
Delphi教程
操作系统教程
WindowsXP
Linux
Win2003
Vista
Win2000
苹果系统
Dos教程
FreeBSD
办公软件教程
Word教程
Excel教程
Powerpoint
Wps教程
Office视频
系统相关
系统工具
杀毒查毒
WEB开发教程
Asp教程
Jsp教程
Php教程
Xml教程
Html教程
CSS教程
CGI-Perl教程
ASP.NET
教程: Linux教程-数据库-为什么ODBC不是Linux的一个标准特征?
教程: Linux教程-数据库-为什么ODBC不是Linux的一个标准特征?
年前,微软宣布了称为Windows开放服务架构(WOSA)的技术战略。WOSA 的精华是开放式数据库连接(ODBC),它是Windows平台提供一套通用数据库存取服务的模型,而数据库供应商为他们的产品提供适配器。所以,Windows应用能避免为数据源编写的适配器的工作,相反地借助标准化的ODBC架构存取数据,能集中精力做一些有用的事情。在Windows的其他地方也有同样的思路在起作用。例如,统一的打印机和调制解调器访问。并且微软做了一个极好的工作以抵销各种各样的网络之间的差别。Windows网络服务可在TCP/IP、IPX/SPX和NetBEUI上以相同的方式运行,因为平台在一个中间层上抽象这些协议的差别。
“微软只是一个商业的公司,”Linux 社区喜欢这样看。这种说法有很多真实性,但是真实的故事却要复杂的多。当微软将WOSA风格的抽象引入核心服务,它是作为改革者出现,而Unix/Linux更象是蹒跚学布的原始人。
我现在为什么提起这个问题?上星期我在做一个Zope/Python的应用需要与一个SQL数据库通信,我从Godfly开始,它是一个全部用Python编写的轻重量级别SQL数据库引擎。
Godfly确实很灵活,并且它是Zope内置的数据引擎的一种解决方案,你可以立即用于原型设计,但是一个置于内存的基于脚本语言的SQL引擎将无法处理我的项目需求,而且, 与Godfly一样,它只是SQL的一个子集--例如无ALTER TABLE命令,因此现在正是把Zope挂到一个传统的SQL引擎上的时候了。
在我家庭实验室用NT工作,是因为ODBC不用动太多的脑筋。Zope提供一个称为ZODBCDA适配器产品,它可在数秒内安装,并且立刻让你的Zope环境存取所有系统被设置与之通信的ODBC数据源。这些可能是经由Jet引擎存取得的本地.MDB文件,或者是Oracle、SQL服务器或任何其他数据库的本地或远程实例。
在我的应用建立原型后, 现在是运用它的时候了,运用平台是Linux和MySQL。Zope本身在Windows上和Linux上同样运行,我已经发现这点,因此我不期望有任何麻烦,但是因为我想当然地相信ODBC数据源的中间性,但悲惨的事实中间性还远离Linux世界的常规。特别是Zope和MySQL,你得:
找到并构建将Python捆绑在MySQL客户库的Python扩展,然后构建Zope包装程序以事适配这个SQL扩展。
我以前从来没有构建过Python,我试一了试但失败了。我肯定有其他读者尝试并且成功,我为它们鼓掌,但难道你不是花时间用Zope做些有用的事情,而非将自己处于一个你能开始做事的境地吗?生命太短暂了。那天的结束后,我从Python回到了Perl,并且让我的应用很快运行起来了。为什么呢?Perl的类ODBC驱动程序管理器DBI已经在我的机器上安装好了,它是DBD::mysql-MySQL适配器。总的来说,由于DBI设计师Tim Bunce和一大批真正的驱动程序编写者的出色工作,Perl用才分享着ODBC的许多好处,但是你没有看到这种景象有什么不对吗?投入Perl DBD::mysql的劳动力竟没有一个人继续进行Python、PHP、Tcl或其他要与MySQL通信的应用的开发,这些环境的每一个都必须定义它自己的数据库抽象层,然后希望鼓励
开发者建立全部数据库的适配器。有时它会发生,但通常不是,结果是五花八门的数据源。在数据库新闻组我问了:为什么坚持应用在一端而数据库在另一端这种疯狂组合的泛滥,所有这些都必须以成双成对的方式连接吗?注意在Windows中,仅需要一个Zope ODBCDA,它让你进入缤纷世界。我确实希望Linux/Unix也能如此。
看Perl DBI的例子。它是一个有力的尝试,证明驱动程序管理器/数据适配器模型是必要的。
,但仅仅是对于Perl。那么Python来了,必须开发一个Python的DB-API,并希望得到广大的数据库开发者们支持它,就像Perl开发者们支持其“通用”API一样。
我断言如果你把投入在针对Unix数据库的Perl、Python、PHP、Tcl或
[1]
[2]
[3]
下一页
教程录入:admin 责任编辑:admin
上一篇教程:
教程: Linux教程-数据库-Sybase ASE安全“着陆”Linux
下一篇教程:
教程: Linux教程-数据库-如何实现MySQL中的用户管理
【字体:
小
大
】【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
dos入门教程
dos入门教程-2
dos入门教程-1
|
设为首页
|
加入收藏
|
联系站长
|
友情链接
|
版权申明
|
管理登录
|
免责声明!本站资料大部分来自于互联网,其版权归原作者或其他合法者所有.如内容涉及或侵犯了您的权益,请通知本人,我将尽快处理!.欢迎您的光临。
辽ICP备07003958号