如何实现数据库的无关性?

pbs2000 2006-10-16 03:58:58
我现在负责公司的产品开发,遇到了产品发布时对数据库的要求。如何才能够实现程序发布后,后台的数据库无关性呢?即可以是oracle,又可以是sql或db2
...全文
810 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wcmj 2006-10-16
  • 打赏
  • 举报
回复
这个大多是改配置文件做的
jimh 2006-10-16
  • 打赏
  • 举报
回复
不采用任何非标准的sql语句,除了创建连接使用实际的数据库连接,其他的应用全部使用IDbConnection,IDataReader, IDbCommand等,做到数据库无关就可以了
marvelstack 2006-10-16
  • 打赏
  • 举报
回复
在数据访问层实现一个接口,制定相应数据的访问属性和方法。
比如为IDataProvider,
如果是Sql Server 数据库,编写类实现IDataProvider接口,比如SqlDataProvider类,
同理,Oracle数据库为,OracleDataProvider类实现IDataProvider接口,
在业务逻辑层通过BusinessManager类来使用IDataProvider。
aafshzj 2006-10-16
  • 打赏
  • 举报
回复
1)你要放弃使用任何非ansi sql的东西
2)采用一个好的ORM结构,这与1)相辅相成,1)的确立,会使得2)很容易实现。

AAF就是DBMS专有属性无关的。

欢迎大家来我的博客作客:http://blog.csdn.net/aafshzj/
我正在写一系列关于AAF组件框架的文章。该框架能对开发工作提供很多帮助,并极大地提高开发效率。希望大家看一看并提出宝贵建议。


vvresoft 2006-10-16
  • 打赏
  • 举报
回复
将所有关于数据库配置方面的信息写到配置文件中,将来可以修改配置文件以达到数据库无关性
feiyun0112 2006-10-16
  • 打赏
  • 举报
回复
你可以看看微软实例pet shop

它既可用sql,又可以用oracle

*****************************************************************************
欢迎使用CSDN论坛阅读器 : CSDN Reader(附全部源代码)
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
yan63 2006-10-16
  • 打赏
  • 举报
回复
参考petshop的分层设计,将数据库的交互代码抽象成借口,针对每个数据库各自实现该借口定义的操作。具体可以参考:http://www.brucezhang.com/?p=68
xingyaohua 2006-10-16
  • 打赏
  • 举报
回复
up

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧