SQL Server 2005 & 2012 与 C++ 之间的兼容性
Compatibility between SQL server 2005 & 2012 with C++
我们正在从SQL 2005迁移到SQL 2012,从XP迁移到Win7。我以为我可以在Windows 7上安装/升级到SQL 2012,但这没有奏效。(我收到一条消息,指示"无法更新,因为未安装 SP4",我尝试安装 SP3 和/或 SP4 但没有任何反应,即选择@@version与 9.0.3042 没有变化。因此,我转储了SQL2005并安装了SQL2012,但现在我无法使用原始代码连接到服务器。我很确定它与这个声明有关,#import"C:\Program Files\Microsoft SQL Server\80\Tools\Binn\Resources\1033\sqldmo.rll" rename_namespace("sqldmo")因为这是唯一(我假设)标识SQL2005 GUID(s?
那么,这个假设正确吗?有没有更好的方法来连接到与版本无关的服务器?我们的程序实际上创建了我们使用的数据库、表和存储过程。 (对数据库表的所有访问都是通过存储过程进行的。
如果这是连接的方式,那么我可以"只是"更改引用,重新编译并且一切都应该再次工作吗?
顺便说一句:我仍然在使用Visual Studio 6。我们有VS2012,但我不确定使用它进行构建是否会导致更多问题。 太多的工作永远没有足够的时间.....
感谢您的任何建议...
DMO很久以前就被标记为弃用(据我所知是2005年),取而代之的是SMO(一个.NET库)。恐怕您不能只是放入新的 DLL 并重新编译,而不是一蹴而就
。这真的取决于你在做什么。我假设DMO代码用于创建数据库对象,而不是连接以运行查询。如果是这种情况,则需要替换该代码并实现运行创建数据库所需的查询的内容。
如果您实际上是通过DMO进行查询,那么您还有更多的工作要做,因为您需要通过ODBC或类似的东西进行连接,这些东西从2014年7月到>一直兼容。有很多关于如何做到这一点的例子,但这将是一个更好的选择。
- C++中std::resize(n)和std::shrink_to_fit之间的区别
- int(c) 和 c-'0' 之间的区别。C++
- 在cuda线程之间共享大量常量数据
- 在c代码之间共享数据的最佳方式
- Mix_Init和Mix_OpenAudio SDL之间的区别是什么
- C++ 使用 assign 函数的字符串与直接使用 '=' 更改值的字符串之间的区别
- VSOMEIP-2个设备之间的通信(TCP/UDP)不工作
- std::atomic和std::condition_variable wait,notify_*方法之间的区别
- 大小相等但成员数量不同的结构之间的性能差异
- 类与私有变量的其他类之间的线程安全性
- 如何在cpp文件之间切换窗口?在Qt中
- 线程之间的布尔停止信号
- 我是C++编程的新手,这些代码之间有什么区别,我应该使用哪一个
- 在 const 函数中通过引用和指针返回之间的区别
- 我想知道长双倍和双倍之间的区别
- 如何防止clang格式在流运算符调用之间添加换行符<<
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- 使用.find函数在c++中查找字符和另一个字符之间的大小
- 构造函数和转换运算符之间的重载解析
- C++LinkedList问题.数据类型之间存在冲突?没有匹配的构造函数