我的代码和Linq to sql
函数SubmitChanges
正在运行,但使用local database
时,bin
文件夹中的数据库副本已更新,而不是主数据库。因此,更改不会显示在新查询中。如果我重新连接数据库但没有将其加载为local
同样的问题 - 主数据库没有更新,但现在我无法弄清楚哪一个(转到此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
也许this是最好的方法?
答案 0 :(得分:1)
我认为真正的解决方案是将数据库放在服务器上 - 毕竟,SQL Server 基于服务器的解决方案,而不是基于文件的“数据库”......
安装SQL Server Express(你已经完成了)
安装SQL Server Management Studio Express
在 SSMS Express 中创建数据库,为其指定一个逻辑名称(例如YourDatabase
)
使用其逻辑数据库名称(在服务器上创建时给定)连接到它 - 并且不要乱用物理数据库文件和用户实例。在这种情况下,您的连接字符串将类似于:
Data Source=.\\SQLEXPRESS;Database=YourDatabase;Integrated Security=True
其他所有内容都完全与以前相同......
另请参阅Aaron Bertrand的优秀博客文章Bad habits to kick: using AttachDbFileName以获取更多背景信息。