加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#项目具有不同的数据库,以不同的格式存储相同的数据

发布时间:2020-12-16 01:57:02 所属栏目:百科 来源:网络整理
导读:好吧,标题很长,但我的问题在这里: 我有大约10-12个不同的对象,我必须在我的软件中使用它们.这很容易,我只是创建课程并做任何我想做的事情.但是,所有这些代表数据库行和主要问题的类 – 我的软件必须能够从/向不同的数据库(oracle,mysql,interbase,postgres,
好吧,标题很长,但我的问题在这里:

我有大约10-12个不同的对象,我必须在我的软件中使用它们.这很容易,我只是创建课程并做任何我想做的事情.但是,所有这些代表数据库行和主要问题的类 – 我的软件必须能够从/向不同的数据库(oracle,mysql,interbase,postgres,firebird)读取/写入这些对象.对象存储在不同的数据库中,甚至存储在不同字段(名称和类型)中的不同表中[以及所有这些,因为这些数据库不在它们之间同步].

所以我在编写代码以提供所有工作时遇到了麻烦:让我们认为它是大约5个数据库* 10个对象= 50个类,以及将来的扩展……

任何人都可以告诉我正确的方法,最佳实践,如何构建这个?

解决方法

首先,编写您的类以包装所有这些调用不同的数据库.
您可能会使用数据库提供的数据提供程序连接到每个数据提供程序.

该驱动程序使用ado.net提供了一系列用于处理数据库的类.
在wrap类上使用此类,以导入/导出数据.通常这个数据提供者
有办法将数据库类型映射到.net clr类型.

而且,您必须发现每个数据库的关键点,例如:
有问题的数据库存储表,表字段,索引,键的信息.

编辑:

>读取数据库中的表,存储他的信息和该表字段的信息(字段名称,类型,长度等)
>在这个用于存储此表信息的类中,创建一个用于存储clr类型的字段(如前所述,此数据提供程序提供了一种将数据库类型映射到.net clr类型的方法)
>好的,现在你有了表信息,尊重每个数据库的特性.

现在,您可以开始导入/导出操作.

例如,假设您正在从oracle读取并写入sql.

>您阅读该表的表信息.
>从表中读取数据(选择)并存储在数据表中
>现在,您所要做的就是插入到sql表中,当然使用从oracle中获取的数据.
>还记得你为桌子提供的信息吗?您需要尊重每个数据库的类型映射.

看到:

http://technet.microsoft.com/en-us/library/ms151817.aspx

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读