Connessione Database

di il
20 risposte

Connessione Database

Salve, ho fatto il setup di un programma con un DB locale. quando lo installo nel mio pc il programma si avvia correttamente, mentre se provo a metterlo dentro un altro pc mi dice che il database non esiste o non comunica.
ecco il percorso che do al database:

internal static class ModGenerale
    {
        public static SqlConnection Conn;
        public static string PercorsoDB = "C:\\ProgramData\\Gestione_Affitti\\Application Files\\Gestione Affitti_1_0_0_0";
        public static void SetConnection()
        {
            string stringasql = "Data Source = (LocalDB)\\MSSQLLocalDB; AttachDbFilename = " + PercorsoDB + "\\Archivio_Casa.mdf; Integrated Security = True; Connect Timeout = 30";          
           Conn = new SqlConnection(stringasql);
        }
    }
La setconnection la richiamo all'avvio del programma.

20 Risposte

  • Re: Connessione Database

    Ma in altro pc usi lo stesso percorso?
  • Re: Connessione Database

    Si, è un percorso che hanno tutti i computer. Inserisco la cartella con dentro il database e se lo deve leggere in teoria, ma mi dice che il database non esiste o non riesce a comunicare
  • Re: Connessione Database

    Il file .mdf l'hai copiato negli altri pc?

    Hai installato sql server express negli altri pc?
  • Re: Connessione Database

    oregon ha scritto:


    Il file .mdf l'hai copiato negli altri pc?

    Hai installato sql server express negli altri pc?
    Si, gli faccio installare tutto con il setup. Poi prendo la cartella con il database(nel mio caso si chiama gestione affitti la cartella) e la copio nello stesso percorso dell'altro PC. Da me funziona ma negli altri no
  • Re: Connessione Database

    Ho capito che hai fatto il setup del tuo programma ma non è detto che tu abbia installato anche sql server.
    Ne sei sicuro? Controlla che sql server sia installato nel pc destinazione.
  • Re: Connessione Database

    oregon ha scritto:


    Ho capito che hai fatto il setup del tuo programma ma non è detto che tu abbia installato anche sql server.
    Ne sei sicuro? Controlla che sql server sia installato nel pc destinazione.
    Gli faccio installare i prerequisiti, che sono:
    SQL Server 2012 Express LocalDB
    Il NET.Framework Richiesto per il programma
    e il system CLR Types.
    Non so quale può essere il problema
  • Re: Connessione Database

    Qual è il messaggio precisamente?
  • Re: Connessione Database

    oregon ha scritto:


    Qual è il messaggio precisamente?
    System.Data.SqlClient.SqlException (0x80131904): Si è verificato un errore di rete o specifico dell'istanza mentre si cercava di stabilire una connessione con SQL Server. Il server non è stato trovato o non è accessibile. Verificare che il nome dell'istanza sia corretto e che SQL Server sia configurato in modo da consentire connessioni remote. (provider: SQL Network Interfaces, error: 50 - Errore di Local Database Runtime. Istanza del database locale specificata inesistente.
  • Re: Connessione Database

    Esegui il tool

    SqlLocalDB create "MSSQLLocalDB"

    da finestra Dos per creare l'istanza
  • Re: Connessione Database

    oregon ha scritto:


    Esegui il tool

    SqlLocalDB create "MSSQLLocalDB"

    da finestra Dos per creare l'istanza
    Fatto, ma ora mi dice che la versione del databse è 852, ma lui supporta la 706
  • Re: Connessione Database

    Cosa riporta

    SqlLocalDB info MSSQLLocalDB
  • Re: Connessione Database

    oregon ha scritto:


    Cosa riporta

    SqlLocalDB info MSSQLLocalDB
    Instanza del database locale "MSSQLLocalDB inesistente. Ma alla creazione mi ha detto istanza del database locale MSSQLLocalDB creata con la versione 11
  • Re: Connessione Database

    Utilizza il tool per creare l'istanza con la versione corretta (la 12.0) e avviarla. Vedi

    https://docs.microsoft.com/it-it/sql/tools/sqllocaldb-utility?view=sql-server-2017#arguments
  • Re: Connessione Database

    oregon ha scritto:


    Utilizza il tool per creare l'istanza con la versione corretta (la 12.0) e avviarla. Vedi

    https://docs.microsoft.com/it-it/sql/tools/sqllocaldb-utility?view=sql-server-2017#arguments
    Stavo pensando invece, non è che nel file database.log ci sono le credenziali del mio pc e quindi non riesce a connettersi per questo? Vedendo che è un altro PC non gli permette di fare il login? Perché ho visto che se metto il log file del database precedente nel mio PC (dove funziona correttamente) lui non si connette più.
Devi accedere o registrarti per scrivere nel forum
20 risposte