MySql Connection

di il
13 risposte

MySql Connection

Salve a tutti, ho fatto un programma, ci lavoro da 3-4 mesi con intervalli, sono arrivato al termine, ho terminato il programma con successo, funziona tutto senza problemi. Il programma funziona correttamente sul mio computer, ma se devo trasferirlo in un'altro computer non funziona. Il problema è dovuto alla mancanza di programmi MySqlLocalDB in altri computer. [Il Programma è stato fatto con Visual Studio 2017]
Io vorrei che il mio programma funzioni senza dover installare ulteriori programmi, oppure magari il solo strettamente necessario.
Ho una cartella chiamata "Programma(situata sul desktop)" al suo interno ci sono 3 file: 2 cartelle e un file con estensione sln.
La prima cartella si chiama CercaContatto, la seconda cartella si chiama DataBase e il terzo file si chiama CercaContatto.sln.

Sulla cartella DataBase ci sono due file InformazioniContatti.mdf e InformazioniContatti_log.ldf.
Sulla cartella CercaContatto ci sono altre cartelle e diversi file (all'interno di questa cartella cè l'eseguibile per far partire il programma).

Se possibile sono disposto a cambiare anche il tipo di stringa (tipo di connessione) che non sia LocalDB, in quanto trovo molti problemi senza trovare un soluzione fino adesso nel far partire l'applicazione in un'altro computer. Se devono essere installati programmi fatemi sapere quali con relativi link possibilmente e come impostare successivamente nel computer in qui verrà distribuito il programma. Tenete conto che sul computer che deve partire non cè nessun programma Mysql e servizi server ecc..

Nome del file: App.config
Situato nella cartella: CercaContatto
...
<connectionStrings> 
<add name="RicercaLibro.Properties.Settings.InformazioniDBConnectionString"
            connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\NomeUtente\Desktop\Programma\DB\InformazioniContatti.mdf;Integrated Security=True;Connect Timeout=30"
            providerName="System.Data.SqlClient" />
</connectionStrings> 
...

Nome del file: Form1.CS
Situato nella cartella: CercaContatto
...
namespace CercaContatto 
{ 
public partial class Form1 : Form 
{ 
SqlConnection sqlCon = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\NomeUtente\Desktop\Programma\DB\InformazioniContatti.mdf;Integrated Security=True;Connect Timeout=30");
int InfoId = 0; 
public Form1() 
{ 
lnitializeComponent(); 
} 
private void btnSalva_Click(object sender, EventArgs e) 
...

Grazie in anticipo a tutti.

13 Risposte

  • Re: MySql Connection

    Che errore dà quando cerchi di eseguire il programma su un altro computer?
  • Re: MySql Connection

    Stai usando Sql server ... che c'entra mysql ?
  • Re: MySql Connection

    KingV8 ha scritto:


    Io vorrei che il mio programma funzioni senza dover installare ulteriori programmi
    Questo dipende da cosa è necessario al tuo programma per funzionare.

    KingV8 ha scritto:


    , oppure magari il solo strettamente necessario.
    Sei tu che devi sapere cosa usi e cosa va installato nei pc.
  • Re: MySql Connection

    Il confondere mysql con mssql denota un utente poco esperto, e vabbè.
    credo che la domanda sia 'esiste mssql portabile'?

    Il corollario potrebbe essere 'qual è il modo più rapido e completo per sviluppare applicazioni portabili con database su Windows?' e qui la risposta è delphi, lazarus o in generale NON prodotti Microsoft (che sono anche buoni ma non pongono attenzione alla portabilità)
  • Re: MySql Connection

    KingV8 ha scritto:


    Salve a tutti...
    Sicuramente il file del db non starà nella stessa cartella

    C:\Users\NomeUtente\Desktop\Programma\DB\InformazioniContatti.mdf

    del primo computer.

    Devi gestire la posizione del db da programma.
  • Re: MySql Connection

    MASSICODE: L'errore che compare sul computer nella quale non contiene nessun programma o servizi di SQL è il seguente:

    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: 52 - Impossibile individuare l'installazione di Local Database Runtime. Verificare che SQL Server Express sia installato correttamente e che la funzionalità Locla Database Runtime sia abilitata.)

    GIBRA: Come faccio a sapere cosa serve al mio programma per farlo funzionare in un'altro computer? Considera che quando ho cominciato il mio primo progetto ho installato Microsoft Visual Studio e una volta installato all'interno già c'erano i servizi e altri programmi per svolgere un progetto e altro.. Essendo la mia prima volta non mi è mai venuto il dubbio di avere complicazioni con SQL, in quanto avevo pensato di cambiare solamente il percorso del database nel altro computer e invece si dimostra essere più complicato di quanto pensassi.

    OREGON: Come faccio a gestire la posizione del db da programma?
  • Re: MySql Connection

    Devi installare SQL Server 2016 Express LocalDB (se usi la versione 2016) nel PC di destinazione

    https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/sql-server-2016-express-localdb?view=sql-server-2017

    Per le cartelle, basta non usare percorsi assoluti del tuo PC ma riferimenti ottenuti tramite apposite chiamate al framework.

    Devi acquisire un po' di esperienza in più (a partire dal fatto che MySql e questa sezione del forum non c'entrano nulla) per sviluppare e distribuire progetti del genere. Come ti dice giustamente Gibra, se usi SQL Server devi essere cosciente di cosa stai usando e del fatto che la componente server deve essere disponibile sull'altra macchina.
  • Re: MySql Connection

    KingV8 ha scritto:



    GIBRA: Come faccio a sapere cosa serve al mio programma per farlo funzionare in un'altro computer?
    Sarebbe come se tu mi chiedessi: Come si fa a guidare un'auto?
    La risposta è semplice: si va a scuola! Si studia e si fa pratica.

    KingV8 ha scritto:


    Considera che quando ho cominciato il mio primo progetto...
    Siamo passati tutti per quella strada.
    Ci si tira su le maniche e si va a documentarsi sui libri, su internet, ecc.
    Non ci sono alternative.
  • Re: MySql Connection

    Gibra: c'è una bella differenza tra guidare un'auto e saper programmare. Per poter guidare un'auto bastano 15 guide con un totale di 7/8 ore. Invece per programmare non c'è un tempo preciso in quanto varia da individuo ad individuo, potresti metterci 1 giorno come 1 mese o un anno.

    Riguardo allo studio ti posso dire che ho studiato tutto ciò che serve per realizzare un programma e molto altro, il mio unico problema adesso è quello di dover far funzionare il programma in un'altro computer, non dirmi apri il libro o internet, ho già fatto e non sono riuscito a trovare una soluzione a riguardo, per questo ho scritto in questo Forum sperando di ottenere delle risposte concrete.

    Grazie.
  • Re: MySql Connection

    La risposta concreta te l'ho data. Bisogna anche avere una preparazione minima per comprenderle e metterle in pratica.

    L'hai letta?
  • Re: MySql Connection

    KingV8 ha scritto:


    c'è una bella differenza tra guidare un'auto e saper programmare. Per poter guidare un'auto bastano 15 guide con un totale di 7/8 ore.
    Io conosco persone che ne hanno dovute fare 30 e più.

    KingV8 ha scritto:


    Invece per programmare non c'è un tempo preciso in quanto varia da individuo ad individuo, potresti metterci 1 giorno come 1 mese o un anno.
    Magari bastasse 1 anno...

    KingV8 ha scritto:


    Riguardo allo studio ti posso dire che ho studiato tutto ciò che serve per realizzare un programma e molto altro,
    non basta, quello è appena sufficiente per fare programmi che girano solo sul tuo pc, infatti:

    KingV8 ha scritto:


    il mio unico problema adesso è quello di dover far funzionare il programma in un'altro computer, non dirmi apri il libro o internet, ho già fatto e non sono riuscito a trovare una soluzione a riguardo, per questo ho scritto in questo Forum sperando di ottenere delle risposte concrete.
    Se pensi di imparare sui forum, stai fresco.
    Documentati. Questa è l'unica risposta concreta possibile.
    Hai cercato e non hai trovato? Allora hai cercato male. Riprova. Riprova ancora. Fino a che non trovi le risposte che ti servono.
    - Una cosa è scrivere programmi.
    - Cosa diversa è scrivere programmi che vanno distribuiti.
    - Cosa diversa è scrivere le guide per i programmi.
    - Cosa diversa è scrivere guide per i programmi che vanno distribuiti.
    - E come devono essere distribuiti questi programmi? In locale? In rete LAN? Sul Web? Sul Cloud?
    - E l'utente ha le credenziali adeguate per installare questi programmi?
    - E su quali versioni del S.O. possono girare questi programmi?
    - Di quale versione del framework hanno bisogno?

    etc. etc. etc.

    Credimi, aver sviluppato un programma significa essere solo all'inizio di una serie di implicazioni ben più complesse.
    E tu vuoi risposte concrete a tutto questo?
  • Re: MySql Connection

    gibra ha scritto:


    Io conosco persone che ne hanno dovute fare 30 e più.
    Ne conosco tante che avrebbero dovuto farne 300, e più...
  • Re: MySql Connection

    +m2+ ha scritto:


    gibra ha scritto:


    Io conosco persone che ne hanno dovute fare 30 e più.
    Ne conosco tante che avrebbero dovuto farne 300, e più...
Devi accedere o registrarti per scrivere nel forum
13 risposte