【发布时间】:2015-10-02 01:03:13
【问题描述】:
如果这个问题有点含糊,我们深表歉意;我会尽量用恰当的措辞来表达。
基本上,我有一个 C++ 应用程序,它目前在后端 MSSQL (SQL Server 2014) 数据库上运行。为了简化数据库通信和构建实体模型,我们组装了自己的一组 C++ 类,这些类封装了原生 ADO.NET 调用;我们以这样的方式创建它,开发人员只需提供连接字符串的详细信息,并将其组装为连接方法的一部分,如下所示:
string.Format(_T("DRIVER=SQL Server;SERVER=%s\\%s;UID=%s;PWD=%s;DATABASE=%s"),string,strConnInstance,strUser,strPassword,strDatabase);
我们现在需要从 oracle 数据库中读取数据,我们想知道是否可以使用相同的连接库。我假设我们需要调整连接字符串(例如,驱动程序需要读取不同的内容)。我相信我已经读过可以通过使用 ODBC 驱动程序来促进 Oracle 连接?是否只是安装相关驱动程序(如果是,是哪个?)并更改连接字符串中的“驱动程序”参数(如果是,是什么?)。
如果不是这么简单,有没有其他方法可以做到,或者我们正在考虑重新开发?
提前致谢!
【问题讨论】:
-
不确定我是否理解,但 ADO.NET 与数据库无关。如果您有适当的驱动程序,它可以使用任何数据库。与 SQL Server 一样,存在由 Oracle 提供的 Oracle 驱动程序,称为 ODP.NET。不清楚的是您似乎在下面使用 ADO.NET 和 ODBC(“DRIVER=...”),而不是预期的 .NET SQL 类。你这样做的原因很奇怪。反正也有 Oracle ODBC 驱动,所以你可以测试一下。一点警告:如果您以前从未考虑过 Oracle,那么它可能不会像那样工作......
-
您查看过控制面板中的 ODBC 连接吗?如果您安装了正确的驱动程序,您可以在那里设置与任何类型数据库的连接..
-
您的应用程序是否有任何特定于数据库的嵌入式 SQL?
标签: c++ sql-server oracle visual-studio-2010 ado.net