56 messaggi dal 25 settembre 2010
Public Function GetCompanyNameData() As List(Of String)
Dim myReader As SqlDataReader
cn = New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=NORTHWIND;Integrated Security=True")
cm = New SqlCommand(cmString, cn)
cn.Open()

Non mi fa aprire il database, qualsiasi archivio e con qualsiasi tipo di autentificazione.

Posto il dettaglio eccezione,

System.Data.SqlClient.SqlException non è stata gestita dal codice utente
Class=11
ErrorCode=-2146232060
HResult=-2146232060
LineNumber=65536
Message=Impossibile aprire il database "NORTHWIND" richiesto dall'account di accesso. Accesso non riuscito.
Accesso non riuscito per l'utente 'xy\xy'.
Number=4060
Procedure=""
Server=.\SQLEXPRESS
Source=.Net SqlClient Data Provider
State=1
StackTrace:
in System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
in System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
in System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
in System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
in System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
in System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
in System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
in System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
in System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData)
in System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
in System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
in System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
in System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
in System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
in System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
in System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
in System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
in System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
in System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
in System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
in System.Data.SqlClient.SqlConnection.Open()
in WAOperazioni_ado_comuni._Default.GetCompanyNameData() in c:\users\loris\documents\visual studio 2010\Projects\WAOperazioni ado comuni\WAOperazioni ado comuni\Default.aspx.vb:riga 16
in WAOperazioni_ado_comuni._Default.Page_Load(Object sender, EventArgs e) in c:\users\loris\documents\visual studio 2010\Projects\WAOperazioni ado comuni\WAOperazioni ado comuni\Default.aspx.vb:riga 30
in System.Web.UI.Control.OnLoad(EventArgs e)
in System.Web.UI.Control.LoadRecursive()
in System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
InnerException:

Grazie a tutti
28 messaggi dal 30 ottobre 2014
Salve,

sembra un problema di mancato riconoscimento dello User.

Prova ad inserire un Try che intercetta l'errore SqlClient es
        Try
            cn.Open()
        Catch ex As SqlClient.SqlException
            MessageBox.Show(ex.Number)
            MessageBox.Show(ex.LineNumber)
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try


Hai provato a collegarti con la procedura automatica "Esplora Server" per capire se è un problema del Server Sql o dell'account?

Esplora Server --> Connessione Dati (tasto Dx e Aggiungi Connessione.

Tra l'altro la procedura, se va a buon fine, ti crea la stringa di connessione esatta che puoi dopo ricopiare nella Function.

Un workaround interessante lo puoi trovare qui:
http://blogs.msdn.com/b/sql_protocols/archive/2006/02/21/536201.aspx.

L'errore 1 indica una situazione di errore generica e per capire la vera natura del problema bisogna entrare nel "Sql Server Management Studio" ed andare a controllare il log di errore.

Spero di esserti stato un po' d'aiuto.
Saluti. Luciano

Ho deciso: preferisco essere il peggiore dei programmatori che il migliore dei NON programmatori.
56 messaggi dal 25 settembre 2010
ciao, grazie, ti posto il log errore sql server da menagmenemnt studio da cui mi connetto regolarmente.

questo è il solito
Data 09/05/2015 13:15:11
Log SQL Server (Corrente - 09/05/2015 13:16:00)

Origine Accesso

Messaggio
Login failed for user 'xy'. Motivo: impossibile aprire il database specificato in modo esplicito. [CLIENT: <local machine>]




questo quello subito dopo

Data 09/05/2015 13:15:11
Log SQL Server (Corrente - 09/05/2015 13:16:00)

Origine Accesso

Messaggio
Errore: 18456, gravità: 14, stato: 38.
28 messaggi dal 30 ottobre 2014
Ciao,
dall'errore che riporti, se dai un'occhiata a questo link http://www.mssqltips.com/sqlservertip/2581/sql-server-error-18456-finding-the-missing-databases/ sembra che il database sia offline o cancellato.
Da Sql Server Management il database è raggiungibile? E' online, riesci a eseguire qualche query?

Hai provato a creare un utente temporaneo e provare ad autenticarti dal client con l'autenticazione di Sql Server invece che con quella Windows?

I servizi Sql Server sono tutti correttamente in esecuzione?

Hai provato con la procedura automatica di collegamento in Visual Studio:
Dati ---> Editor Transact-SQL ---> Nuova Connessione Query

oppure

Esplora Server --> Connessione Dati (tasto Dx e Aggiungi Connessione), e scegli come origine dati "Ms Sql Server"

Se non ti trova il database potrebbe significare che il problema è più sul lato server che sul client.

Ciao
Luciano

Ho deciso: preferisco essere il peggiore dei programmatori che il migliore dei NON programmatori.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.