社区
C#
帖子详情
asp.net里如何做到简单更换数据库?
yilrwy
2007-11-15 11:53:31
如果我们用access数据库,连接是这样定义的OleDbConnection,如果连接SQL Server就得用SqlDbConnection,请问有什么办法可以使更换数据库的时候,只要改动极少的代码,而不需要把所有的OleDbConnection都改成SqlDbConnection?
...全文
112
7
打赏
收藏
asp.net里如何做到简单更换数据库?
如果我们用access数据库,连接是这样定义的OleDbConnection,如果连接SQL Server就得用SqlDbConnection,请问有什么办法可以使更换数据库的时候,只要改动极少的代码,而不需要把所有的OleDbConnection都改成SqlDbConnection?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
etuchang
2007-11-16
打赏
举报
回复
应该是工厂模式把
etuchang
2007-11-16
打赏
举报
回复
using System.Configuration;
using System.Data.Common;
using System.Data.SqlClient;
...
DbConnection conn = null;
ConnectionStringSettings s = ConfigurationSettings.ConnectionStrings["ConnectionStrings"];
DbProviderFactory factory = DbProviderFactories.GetFactory(s.ProviderName);
if ((factory.SupportedClasses & DbProviderSupportedClasses.DbConnection) > 0)
{
conn = factory.CreateConnection();
conn.ConnectionString = s.ConnectionString;
}
DbCommand selectCommand = null;
if ((factory.SupportedClasses & DbProviderSupportedClasses.DbCommand) > 0)
{
selectCommand = factory.CreateCommand();
selectCommand.CommandText = "SELECT * from dbo.Customers";
selectCommand.Connection = conn;
}
conn.Open();
DbDataReader dataReader = selectCommand.ExecuteReader();
while (dataReader.Read())
Console.WriteLine(sqlDataReader.GetString(0));
conn.Close();
yujia4616
2007-11-16
打赏
举报
回复
建议去分析一下微软的petshop
etuchang
2007-11-15
打赏
举报
回复
写一个类
using System.Data.Common;
用
DbConnection
DbCommand
ljleager
2007-11-15
打赏
举报
回复
连接SQL Server不是必须用SqlDbConnection,OLEDbConnection也可以啊
如果要适用多数据库,最好写一个类,专门负责处理与不同数据库的交互
yilrwy
2007-11-15
打赏
举报
回复
写一个类
using System.Data.Common;
用
DbConnection
DbCommand
--------------------------------------
能不能给出具体的代码?
lextm
2007-11-15
打赏
举报
回复
首先,使用一个支持多种数据库的框架本身非常麻烦。我见过的框架除了现成的OleDB一套,就是CodeGear手里的Borland Data Provider for .NET和DBExpress for .NET——这两个只能在Delphi for .NET里面用。
其次,请在设计时就确定使用什么数据库。一般来说实际的项目需要迁移数据库的可能性几乎是0,所以从来没见过需要在编码时支持多种数据库的。毕竟C#代码支持好了,可是不同的数据库SQL语法又不一样,到头来要改的东西实在是太多了,甚至不如把整个DAL重做来的简单。
ASP.NET
通用
数据库
访问组件
通过使用通用
数据库
访问组件,开发者可以减少代码量,提高代码质量,并且在
更换
数据库
系统时,只需要更改少量配置,无需大规模重构代码。此外,它还有利于团队协作,因为所有成员都遵循同一套接口进行
数据库
操作,...
asp.net
的通用
数据库
访问层源码
可以在SQL语句中使用
数据库
的任何函数(如果使用某个
数据库
的专用函数,在
更换
数据库
系统时会带来麻烦)。5.支持动态查询,可任意指定查询条件,且查询条件个数不确定。支持
数据库
分页(需存储过程支持)。6. 支持...
最
简单
的三层架构
ASP.NET
总的来说,"最
简单
的三层架构
ASP.NET
"是一个实用的示例,可以帮助开发者理解并掌握如何在
ASP.NET
环境中应用三层架构进行项目开发。通过学习这个实例,你可以提升在大型项目中组织代码和管理复杂性的能力。
ASP.NET
源码——开源WEB在线SQL管理工具.zip
数据库
连接字符串通常存储在配置文件(如Web.config)中,方便
更换
数据库
环境。 4. **SQL执行逻辑**:程序会接收用户输入的SQL命令,然后通过ADO.NET或Entity Framework的API执行这些命令,并获取返回的结果集。...
asp.net
core敏捷开发框架c#源码
关于
数据库
支持,
ASP.NET
Core支持多种
数据库
系统,包括MySQL、Oracle和SQL Server。这得益于其ORM(对象关系映射)框架Entity Framework Core,它允许开发者以面向对象的方式操作
数据库
,而无需关心底层的SQL语法。...
C#
111,116
社区成员
642,552
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章