Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Aiuto per MySQL e VB.net
Forum - C# / VB.NET - Aiuto per MySQL e VB.net

Avatar
antoniop78 (Normal User)
Newbie


Messaggi: 1
Iscritto: 15/04/2022

Segnala al moderatore
Postato alle 7:35
Venerdì, 15/04/2022
Buongiorno a tutti, mi chiamo Antonio e sono un programmatore a livello dilettantistico.
Ho bisogno di un piccolo aiuto per capire come procedere nella realizzazione di un software in Visual Studio, spero di trovarlo qui.
Mi scuso in anticipo se sto scrivendo in una parte sbagliata del forum.

Generalmente faccio software per uso personale e in locale. Stavolta ho esigenze di creare un software che legga, modifica e cancella dati in tabelle su database condivisi su internet.
Ho fatto la prova in locale con access e VB.net e tutto fila liscio. Adesso dovrei estendere il tutto in una macchina server (penso su Aruba) e quindi passare a SQL server.
Premetto che non ho idea di come funziona SQL Server, quindi non so se crea dei file tipo access oppure crea tutto dentro il suo ambiente di sviluppo.
In pratica il mio software deve poter garantire l'accesso lettura/scrittura a non più di 10 utenti su 4 o 5 database localizzati in una cartella del server su internet.
In termini di MB, stiamo parlando di roba piccola, non credo oltre i 50MB ma forse non supereranno mai i 10MB a database.
Attualmente in access il database più complesso ha una decina di tabelle e la la tabella più complessa ha una trentina di campi.
I DataBase non sono vincolati o concatenati tra loro in nessuna maniera.
In questo sistema, nel caso peggiore ci saranno 10 utenti a fare query nei Database della cartella condivisa del server.
Ho anche un altra esigenza, sempre nello stesso PC ci saranno tante cartelle (credo una decina) condivise ad altri utenti tutte con lo stesso sistema di funzionamento descritto prima (nel caso in cui non li gestisce potrei optare per un server a cartella).

Volevo capire se con Microsoft SQL server Express (quello gratis per intenderci) potevo affrontare questo lavoro.
Se si e se ho capito bene, la prima cosa da fare è installarlo sia sul server (internet) e sia sul mio pc dove ho visual studio.
Nel lato Server dovrei creare i DataBase mentre nel lato client (per adesso il pc dove sto realizzando il software) dovrei creare la stringa di connessione con credenziali e la stringa con le query un po per come faccio con Access.

Scusatemi se sono stato lungo e sicuramente poco competente in molte parti, ma vorrei iniziare con il piede giusto.
Grazie

PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2173
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 12:27
Venerdì, 15/04/2022
Il procedimento è più o meno quello che hai descritto.
Ma eviterei proprio di usare il server SQL di microsoft proprio per tantissime ragioni.
Una di quelle e che serve un hosting dedicato che supporti appunto il Microsoft Sql server (aruba in questione)
Mentre si può risparmiare sull'hosting utilizzando un qualsiasi servizio di hosting che abbia semplicemente un supporto per mysql.

Come editor potrai utilizzare lo stesso sfruttato dal servizio o da milioni di utenti (phpMyAdmin)
che normalmente danno gratuitamente su ogni host.

L'unica cosa da verificare e se l'host ti dia libero accesso tramite ip per connetterti al database mysql.
e nella stringa di connessione basta semplicemente dichiarare l'ip,porta,username e password.
ed utilizzare la sintassi sql che è uguale a quella di access.

Codice sorgente - presumibilmente C#

  1. server = "127.0.0.1"; //Indirizzo ip
  2. database = "Studenti";
  3. uid = "username";
  4. password = "password";
  5. string connectionString;
  6.  
  7. //------
  8.  
  9. connectionString = "SERVER=" + server + ";" + "DATABASE=" +
  10.                 database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
  11.  
  12.  
  13. connection = new MySqlConnection(connectionString);
  14.  
  15. try
  16. {
  17.  
  18.  connection.Open();
  19.  
  20. }
  21. catch(MySqlException a)
  22. {
  23.  
  24.    switch(a.Number)
  25.    {
  26.      case 0:
  27.       MessageBox.Show("Impossibile connetersi al database, verificare l'host");
  28.      break;
  29.      case 1045:
  30.      MessageBox.Show("Username / Password errata, riporvare.");
  31.      break;
  32.    }
  33. }



Come vedi è semplicissimo e puoi accedere alle informazioni sia utilizzando una pagina web, o dal tuo programma.
Ma come detto, devi verificare se l'host del servizio ti dia libero accesso al server mysql.



Ultima modifica effettuata da Thejuster il 15/04/2022 alle 12:28


PM Quote