我是SQL Server和C#的新手。我有Computer1
,Windows7。我使用Windows Forms和SQL Server 2008 R2 Express。
我开发了一种软件,该软件稍后将在其他Windows计算机上运行,并且这些计算机将仅具有SQL Server数据库引擎(未安装Management Studio)。
我希望在程序启动时以编程方式附加数据库,而不是手动附加数据库。
我创建了一个文件夹(D:\MyFolder)
,并将mydb.mdf
和mydb.ldf
文件放入其中(重新创建的数据库)。
然后,我使用以下代码将mydb
数据库附加到服务器,并且已成功完成,并且可以从数据库中读取数据。我必须授予MyFolder
的完全控制权限,否则该程序将引发数据库登录失败。
我还有Computer2
,它的窗口和SQL Server版本与computer1
完全相同。我从mdf
复制了ldf
和computer1
文件,并将它们粘贴到D:\MyFolder
的{{1}}中,然后运行程序成功连接了数据库。
直到现在一切正常,两台计算机都已连接数据库。
现在,我转到computer2
,转到computer2
,右键单击数据库文件并删除它们,然后转到D:\MyFolder
复制数据库文件并将其粘贴到computer1
(在同一目录computer2
中),当我运行该程序时,它说:
无法打开登录请求的数据库“ mydb”。登录失败。用户“计算机名/用户名”的登录失败
即使我在D:\MyFolder
上授予所有人许可,它仍然会引发相同的错误。
我整天都在搜索,并且检查了以下答案:here,here,here,here和here,但没有任何帮助。有人知道我该怎么做才能解决它?任何建议都会有所帮助。
MyFolder
答案 0 :(得分:0)
在连接字符串中使用SQL Server的实例名称。
例如
如果您使用的是Express Edition,并且实例名称为SQLEXPRESS,则尝试使用localhost\SQLEXPRESS
或(local)\SQLEXPRESS
而不是localhost
。
答案 1 :(得分:0)
答案取决于您的联系。
$('#toshow' ).click( function( e ) {
$.post('?show=okay')
.done(function(data) {
});
});
根据文档
为true时,将使用当前Windows帐户凭据进行身份验证。
Windows帐户凭据很少能从一台计算机运行到另一台计算机。如果无法使用DDL(首选方式),则需要在数据库中使用用户名和密码,然后再导出文件。