Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Istruzione VisualBasic per MySQL

    Sapreste dirmi se, con Visual Basic, la sintassi per interagire con un database in MySQL è la stessa di quella utilizzata per SQL Server?

    In pratica dovrei accedere ad un db MySQL residente su un Server da una macchina client su cui girano dei vecchi moduli fatti in Visual Basic. In origine tali moduli interagivano con SQL Server ma ora devono utilizzare MySQL.

    Spero di cavarmela con qualche piccola modifica

  2. #2
    Aggiungo ulteriori informazioni per meglio formulare la domanda.

    Ho dei programmi fatti con Visual Basic 5.0 che giravano bene con una vecchia versione di SQL Server. Adesso, avendo aggiornato le macchine ed il sw, ho installato MySQL. Questi programmi in vb ora non vanno più bene e devo mettere mano al codice per adattarlo al nuovo db.

    La parte del codice interessata è questa:

    Set MyDB = OpenDatabase(web_dns, True, False, "ODBC;DSN=web_dns; UID=utente;LoginTimeout=2; PWD=")
    Set rstMyDB = MyDB.CreateDynaset("select * from tnstampe_min")
    With rstMyDB
    .MoveLast
    .FindFirst "fileweb = '" & file_name_new & "'"
    If .NoMatch Then

    .AddNew

    .Fields("TitoloID").Value = idtab
    .Fields("Tempo_Esecuzione").Value = Format(Now, "yy-mm-dd hh:mm")
    .Fields("fileweb").Value = file_name_new

    .Update

    End If
    End With


    Ho installato ovviamente il drive MyODBC (3.51) ed ho ricreato le connessioni ODBC.

    Il collegamento riesce bene ma succede che quando viene eseguita l'istruzione Update mi da un messaggio d'errore dicendo che non è possibile aggiornare una tabella linkata.

    La cosa strana è che se elimino l'istruzione .Fields("Tempo_Esecuzione").Value = Format(Now, "yy-mm-dd hh:mm") il record me lo aggiunge lasciando vuoto questo campo. Le cose vanno bene anche se nel db definisco il campo Tempo_Esecuzione come testo.

    Perchè in un caso mi dice che non può modificare una tabella linkata e nell'altro lo fa tranquillamente?

    Il metodo di connessione utilizzato è giusto e soprattutto è ancora attuale visto che si tratta di una realizzazione di 7 anni fa?

    Grazie

  3. #3
    per parlare di VB abbiamo una sezione (subforum) apposita. sposto là.

    p.s. ricordati di inserire la versione del linguaggio anche (soprattutto) nel titolo

    ----------------------------------

    p.s. non utilizzando VB5 non saprei...
    con VB6 l'istruzione è la stessa (ovv. cambia la stringa di connessione)

    prova a leggere questo thread e segui i link
    forse è sufficiente a risolvere...

    http://forum.html.it/forum/showthrea...ht=DSN+sistema
    ...Terrible warlords, good warlords, and an english song

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.