Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Creare DataBase :Lezione 72 della guida
Forum - C# / VB.NET - Creare DataBase :Lezione 72 della guida

Avatar
1/2copiatore (Normal User)
Rookie


Messaggi: 28
Iscritto: 05/10/2019

Segnala al moderatore
Postato alle 9:57
Martedì, 17/12/2019
Buongiorno a tutti

sebbene abbia effettuato copia/incolla della procedura per la creazione di DatBase e relative tabelle i problemi continuano a persistere (sono molto demoralizzato)

inserisco il codice

Codice sorgente - presumibilmente VB.NET

  1. Imports MySql.Data.MySqlClient
  2.  
  3. Module Module1
  4.     Public Mio_DB As String = "C:\Euro6\DB_Euro6.mdf"
  5.  
  6.     Public Sub CreaNewDataBase()
  7.         Dim Conn As New MySqlConnection("Server=localhost; Uid=root; Pwd=root;")
  8.         Dim Cmd As New MySqlCommand()
  9.  
  10.         Try
  11.             Conn.Open()
  12.             Cmd.Connection = Conn
  13.              Cmd.CommandText = "CREATE DATABASE Mio_DB;"
  14.             Cmd.ExecuteNonQuery()
  15.         Catch Ex As Exception
  16.             MsgBox(Ex.Message)
  17.         Finally
  18.             Conn.Close()
  19.         End Try
  20.  
  21.         'crea la tabella TB_Stati
  22.         ' ...
  23.         ' ...
  24. end sub



Ora, per quanto io sia tonto, mi sono posto delle domande:

nel nome del file da creare va la path? mi sembrava un 'Si' ovvio altrimenti dove mette il file!?
e l'estensione ci va o non ci va? dopo vari ragionamenti mi è sembrato un 'Si', altrimenti come faccio a sapere a priori se il file esiste!?

Ma per quanto ci pensassi che le cose funzionassero bene e subito ... l'errore c'è !!!

Chiedo ancora il vostro aiuto ... grazie
  
DETTAGLIO DELL'ERRORE GENERATO

                MySql.Data.MySqlClient.MySqlException
                HResult = 0x80004005
          Messaggio = Unable To connect To any Of the specified MySQL hosts.
          Origine = MySql.Data
                Analisi dello stack:
           in MySql.Data.MySqlClient.NativeDriver.Open()
           in MySql.Data.MySqlClient.Driver.Open()
           in MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
           in MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
           in MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
           in MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
           in MySql.Data.MySqlClient.MySqlPool.GetConnection()
           in MySql.Data.MySqlClient.MySqlConnection.Open()
           in WindowsApp3.Module1.CreaNewDataBase() in C:\Euro6\WindowsApp3\Module1.vb: riga 40
           in WindowsApp3.Frm_TipiEmissioni.Frm_TipiEmissioni_Load(Object sender, EventArgs e) in C:\Euro6\WindowsApp3\Frm_TipiEmissioni.vb: riga 9
           in System.Windows.Forms.Form.OnLoad(EventArgs e)
           in System.Windows.Forms.Form.OnCreateControl()
           in System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
           in System.Windows.Forms.Control.CreateControl()
           in System.Windows.Forms.Control.WmShowWindow(Message& m)
           in System.Windows.Forms.Control.WndProc(Message& m)
           in System.Windows.Forms.ScrollableControl.WndProc(Message& m)
           in System.Windows.Forms.Form.WmShowWindow(Message& m)
           in System.Windows.Forms.Form.WndProc(Message& m)
           in System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
           in System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
           in System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

        Eccezione interna 1
        AggregateException: Si sono verificati uno o più errori.

        Eccezione interna 2
        SocketException: Impossibile stabilire la connessione. Rifiuto persistente del computer di destinazione 127.0.0.1: 3306

P.S. sto pensando di rispolverare il vecchio VB4  :rotfl:


PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5955
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:03
Martedì, 17/12/2019
Attento ... stai facendo una gran confusione .... (e forse è meglio che torni al VB3...)

Un file .mdf è un file di "SQL Server" della Microsoft che è una cosa DIVERSA da MySql.

Che stai combinando?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
1/2copiatore (Normal User)
Rookie


Messaggi: 28
Iscritto: 05/10/2019

Segnala al moderatore
Postato alle 10:05
Martedì, 17/12/2019
ok, spiegami meglio ... per favore

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5955
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:18
Martedì, 17/12/2019
Spiegarti tutto il mondo dei DBMS ?  Mi sembra eccessivo ... dovresti studiare le basi per poter affrontare questi problemi (anche sulle stringhe hai problemi).

E' un discorso che vuol essere costruttivo.

Se usi un server DBMS tu NON devi conoscere il percorso del DB ma solo il suo nome e indicarlo nella CREATE
Non stai utilizzando Access ... un DBMS di tipo Server (come MySql) gestisce i file dati senza che l'utente ne abbia conoscenza.

"CREATE DATABASE 'Anagrafica';"

Ma sarebbe MOLTO MEGLIO non creare il DB da codice ma con il tool "MySql Workbench" in modo da gestire tabelle/campi e tutto il resto. Poi da programma accedi ai dati con le frasi SQL per inserire/modificare/selezionare/cancellare.

Insomma ... devi studiare veramente le basi ... affronta programmi più semplici ...



(P.S. Intanto l'errore che hai avuto indica che non esiste il MySql installato o funzionante)


Ultima modifica effettuata da nessuno il 17/12/2019 alle 10:51


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Goblin (Member)
Expert


Messaggi: 303
Iscritto: 02/02/2011

Segnala al moderatore
Postato alle 21:30
Martedì, 17/12/2019
Testo quotato

Postato originariamente da 1/2copiatore:

ok, spiegami meglio ... per favore



NB: Quoto tutto quello che ti ha scritto Nessuno.

Usare un DBMS, e i relativi comandi SQL, non si impara in 5 minuti.
Cmq se vuoi iniziare, oltre leggere e studiare, ti consiglio come primo step di installare un server DBMS, meglio MySQL, in questo caso hai 2 scelte:
Premessa: Non hai installato il DBMS MySQL
1) XAmp per windows un click e fai tutto, hai il mondo DBMS a portata di mano (... forse ho esagerato)
2) Vai sul sito Oracle e ti scarichi la versione di MySQL adatta alle tue esigenze.

Poi irrilevante se hai scelto 1 o 2:
3) Dal sito Oracle di scarichi il tool per la gestione del DBMS "MySql Workbench", praticamente è un "access" per la gestione del DBMS

Personalmente se sei alle prime armi di consiglio XAmp, poi inizia a giocare con Workbench, crea datatbase, crea tabelle, sql, viste, StoreProc ect ect ... una volta che hai capito come funziona (ammesso che tu già non lo sappia), cerca come connettersi ad un server MySQL con VB.NET, in questo non ti posso essere minimamente di aiuto, il mondo .NET non lo conosco bene, probabilmente dovrai impostare la connessione con il server, porta, usr, pwd, DBName ma non so dirti come.

Ovviamente sono stato molto "light", come ha detto "Nessuno" dietro una semplice "select [CAMPI] from anagrafica" c'e' il mondo, se parliamo di multiutenza, ovviamente i problemi si riducono se si parla di monoutenza.

Se hai problemi di SQL, non .NET, posso esserti di aiuto molto volentieri.
G.
  


Ibis et redibis non morieris in bello
PM Quote