我有一个ASP.NET 3.5应用程序,在其App_Data文件夹中有一个SQL 2005 Express .mdf数据库文件。让我们称之为Foo.mdf。自己的ASP.NET应用程序可以连接到数据库没有问题。到现在为止还挺好。ASP.NET应用程序不会与Sql Server管理Studio Express共享数据库
然后,如果我在服务器上安装Sql Server Management Studio Express并启动它,它会找到本地SQLEXPRESS实例并连接到它,但不会在数据库列表中显示Foo.mdf。
所以我尝试通过右键单击数据库并选择Attach ..并找到.MDF来附加Foo.mdf。这种失败,一个模糊的错误:
CREATE FILE encountered operating system error 32(error not found)
while attempting to open or create the physical file
'C:\inetpub\wwwroot\FooApp\App_Data\Foo.mdf'. (Microsoft SQL Server, Error: 5123)
如果我停止IIS我的ASP.NET站点,然后附上确实工作,但后来当我重新启动我的ASP.NET应用程序,它不能连接到Foo.mdf。
所以它看起来像SQL Express 2005只会让我的应用程序或管理工作室连接。这似乎真的很糟糕 - 当然Sql Express应该允许多个连接?我期待它的行为像普通的Sql Server。
希望我做错了。请指教。
这并不是说只有一个应用程序可以连接到数据库,而是只有一个服务器可以物理连接数据库。您应该将其附加到SQL Express并修改您的ASP。NET配置字符串连接到该服务器和数据库。 – 2010-10-15 15:15:24