1

我的代码和Linq to sql函数SubmitChanges正在工作,但是当使用文件夹local database中的数据库副本时,bin会更新而不是主数据库。因此,更改不会显示在新查询中。如果我重新连接数据库但不加载它作为local同样的问题 - 主数据库没有更新,但现在我无法弄清楚哪个是(tks to this question)。

本地数据库的设置是什么,或者如何使用非本地数据库来显示数据库新查询的更改?

Dim DATA As New lnqPolarisDataContext
        Dim newBOOK As New BOOK()
        newBOOK.ID = 14
        newBOOK.LEG = 11
            newBOOK.P_C = "C"
            newBOOK.STRATEGY = "STRADDLE"
            newBOOK.STRIKE = 999
            newBOOK.CONTRACT = "XXX"

            DATA.BOOKs.InsertOnSubmit(newBOOK)
            DATA.SubmitChanges()

   ... new query doesn't show these changes

也许是最好的方法?

4

1 回答 1

1

在我看来,真正的解决方案是将你的数据库放在它所属的服务器上——毕竟,SQL Server一个基于服务器的解决方案,而不是一个基于文件的“数据库”......

  1. 安装 SQL Server Express(反正你已经完成了)

  2. 安装 SQL Server Management Studio Express

  3. 在SSMS Express中创建您的数据库,给它一个逻辑名称(例如YourDatabase

  4. 使用它的逻辑数据库名称(在服务器上创建它时给出)连接到它——不要乱用物理数据库文件和用户实例。在这种情况下,您的连接字符串将类似于:

    Data Source=.\\SQLEXPRESS;Database=YourDatabase;Integrated Security=True
    

    其他一切都和以前完全一样...

另请参阅 Aaron Bertrand 的优秀博文 踢坏习惯:使用 AttachDbFileName了解更多背景信息。

于 2016-01-03T08:39:25.910 回答