在我的机器上,我安装了2012年、2014年和2016年的LocalDb。当我运行我的应用程序时,它默认不会选择最新版本。
使用的连接字符串:
Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\ServiceLocal.mdf;Integrated Security=True;Connect Timeout=5
所以我使用'MSSQLLocalDB‘(而不是v11.0)。但它不会运行到2016年,而是2014年(即12.0.2000.8)。选择13.0版本是行不通的。那我还能做什么呢?
发布于 2016-09-28 07:15:39
我现在明白了这些概念。每个实例实际上都是一个实例。连接字符串的目标是这样一个实例,因此要获得另一个版本,您可以使用该版本创建一个新实例。在MSSqlLocalDb的情况下,删除实例,它将在使用最新安装的LocalDb版本进行查询时自动重新创建。
发布于 2016-11-04 13:00:00
如Gabri l所解释的,重新创建实例是可行的,但可能不是一种选择。在典型的示例中,您希望在客户端计算机上创建/附加一个数据库,在该数据库中不应该处理现有实例。
面对同样的问题,我决定最好的解决办法是通过脚本启动应用程序,并在启动应用程序之前使用所需版本的SqlLocalDB.exe创建自己的实例:
SqlLocalDB.exe create "MyVeryOwnInstance" 13.0 -s-s标志导致实例立即启动。之后,您可以在应用程序中连接:
Data Source=(LocalDB)\MyVeryOwnInstance;AttachDbFilename=|DataDirectory|\ServiceLocal.mdf;Integrated Security=True;Connect Timeout=5当然,这需要安装所需的版本。我通过将它与我的应用程序安装程序捆绑在一起来确保这一点。
https://stackoverflow.com/questions/39732815
复制相似问题