SQLExpress database file auto-creation error when using Visual Stu
- From: Kingry <Kingry@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Wed, 13 Sep 2006 11:35:02 -0700
I am having a problem using SQLExpress with Visual studio and getting an
error (details in item 1 below) - SQLExpress database file auto-creation
error.
I found this document describing known issues with Visual Studio 2005.
http://msdn.microsoft.com/vstudio/support/knownIssues/default.aspx#framework
and I believe the specific problem I am having is described in section 2.33
(Details in Item 2 below).
I'm using XP SP2, Visual Studio 2005, SQL Server Express and I'm using the
ASP.NET Development Server instead of IIS.
Has anyone else had this issue and was it resolved and how?
Thanks for any assistance.
** ITEM#1 *************************************************
Server Error in '/WebSite1' Application.
--------------------------------------------------------------------------------
An error has occurred while establishing a connection to the server. When
connecting to SQL Server 2005, this failure may be caused by the fact that
under the default settings SQL Server does not allow remote connections.
(provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance
Specified)
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information about
the error and where it originated in the code.
SQLExpress database file auto-creation error:
The connection string specifies a local Sql Server Express instance using a
database location within the applications App_Data directory. The provider
attempted to automatically create the application services database because
the provider determined that the database does not exist. The following
configuration requirements are necessary to successfully check for existence
of the application services database and automatically create the application
services database:
If the applications App_Data directory does not already exist, the web
server account must have read and write access to the applications directory.
This is necessary because the web server account will automatically create
the App_Data directory if it does not already exist.
If the applications App_Data directory already exists, the web server
account only requires read and write access to the applications App_Data
directory. This is necessary because the web server account will attempt to
verify that the Sql Server Express database already exists within the
applications App_Data directory. Revoking read access on the App_Data
directory from the web server account will prevent the provider from
correctly determining if the Sql Server Express database already exists. This
will cause an error when the provider attempts to create a duplicate of an
already existing database. Write access is required because the web server
accounts credentials are used when creating the new database.
Sql Server Express must be installed on the machine.
The process identity for the web server account must have a local user
profile. See the readme document for details on how to create a local user
profile for both machine and domain accounts.
Source Error:
An unhandled exception was generated during the execution of the current web
request. Information regarding the origin and location of the exception can
be identified using the exception stack trace below.
Stack Trace:
[SqlException (0x80131904): An error has occurred while establishing a
connection to the server. When connecting to SQL Server 2005, this failure
may be caused by the fact that under the default settings SQL Server does not
allow remote connections. (provider: SQL Network Interfaces, error: 26 -
Error Locating Server/Instance Specified)]
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
exception, Boolean breakConnection) +173
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
stateObj) +199
System.Data.SqlClient.TdsParser.Connect(Boolean& useFailoverPartner,
Boolean& failoverDemandDone, String host, String failoverPartner, String
protocol, SqlInternalConnectionTds connHandler, Int64 timerExpire, Boolean
encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection
owningObject, Boolean aliasLookup) +1069
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection
owningObject, SqlConnectionString connectionOptions, String newPassword,
Boolean redirectedUserInstance) +606
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity
identity, SqlConnectionString connectionOptions, Object providerInfo, String
newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +193
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions
options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection
owningConnection) +219
System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) +27
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection
owningConnection) +49
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection
outerConnection, DbConnectionFactory connectionFactory) +89
System.Data.SqlClient.SqlConnection.Open() +160
System.Web.Management.SqlServices.GetSqlConnection(String server, String
user, String password, Boolean trusted, String connectionString) +67
[HttpException (0x80004005): Unable to connect to SQL Server database.]
System.Web.Management.SqlServices.GetSqlConnection(String server, String
user, String password, Boolean trusted, String connectionString) +123
System.Web.Management.SqlServices.SetupApplicationServices(String server,
String user, String password, Boolean trusted, String connectionString,
String database, String dbFileName, SqlFeatures features, Boolean install) +89
System.Web.Management.SqlServices.Install(String database, String
dbFileName, String connectionString) +26
System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile(String
fullFileName, String dataDir, String connectionString) +386
** ITEM #2 ******************************************
2.33 Windows User Profiles for ASP.NET Automatic Database Creation with
SQL Server Express and IIS
The ASP.NET automatic MDF creation process for SQL Server providers using
SQL Server Express (SSE) and IIS only works when IIS is running either as the
local ASP.NET computer account, or as NT AUTHORITY\NETWORK SERVICE. The
automatic creation process also works when a developer is interactively
developing using Cassini (i.e. file based webs). However, when developing
against IIS using either a different local computer account, or a domain user
account, the automatic database creation process will fail because these
accounts do not have a Windows user profile available on the web server.
.
- Prev by Date: Re: GAC References Across Solutions
- Next by Date: Re: VS2005 conditional directive
- Previous by thread: Re: GAC References Across Solutions
- Next by thread: PSDK Win2k3 R2 Mar 06 samples and *.vcproj files?
- Index(es):
Relevant Pages
|