[MySQL] Connessione DB e query da file batch

Discussione in 'MySQL' iniziata da Giulo77, 22 Febbraio 2019.

  1. Giulo77

    Giulo77 Nuovo Utente

    Registrato:
    15 Marzo 2018
    Messaggi:
    22
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    Ciao a tutti,
    ho uno script .bat dove ottengo delle variabili che vorrei andare ad inserire direttamente in un record nel mio database.
    Esempio:
    Codice:
    @echo off
    
    set MYSQL_HOST=192.0.200.5
    set MYSQL_ID=root
    set MYSQL_PASS=
    set MYSQL_DB=dbprova
    set MYSQL_TB=eventi
    set CAMPO1=1
    set CAMPO2=ciao
    Il db risiede su un'altra macchina da cui ovviamente accedo tranquillamente. Una delle particolarità è che non è protetto da password e non ho intenzione di metterla quindi già non saprei come trattare il parametro -p
    Comunque il percorso dove riesco a far partire da cmd il mysql è "C:\Program Files (x86)\EasyPHP-Devserver-17\eds-binaries\dbserver\mysql5724x64x190129155938\bin\mysql.exe" e per la lunghezza delle directory direi che sono essenziali i doppi apici.

    Quello che vorrei ottenere è implementare il comando per connettermi al database e per inserire nella tabella eventi (campo1,campo2) values (%CAMPO1%, %CAMPO2%)

    Ho provato con:
    Codice:
    "C:\Program Files (x86)\EasyPHP-Devserver-17\eds-binaries\dbserver\mysql5724x64x190129155938\bin\mysql.exe" -h %MYSQL_HOST% -u%MYSQL_ID% -p%MYSQL_PASS% -e "use %MYSQL_DB%; INSERT INTO %MYSQL_TB% (campo1,campo2) VALUES (%CAMPO1%, %CAMPO2%);"
    Ho provato anche ad omettere il parametro -p ma nulla.

    Riuscite ad aiutarmi?
     
  2. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.518
    Mi Piace Ricevuti:
    123
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    non conosco mySQL, quindi una risposta indiretta
    con SQL Server di Microsoft utilizzo sqlcmd(.exe) con una riga di comando molto semplice,
    Codice:
    sqlcmd %Opt_svrname% -i "%Opt_CmdFile%" -o "%Opt_LogFile%"
    la chiamata ell'eseguibile può avvenire da qualunque posizione, senza percorsi chilometrici
    Opt_svrname contiene i parametri di connessione
    Opt_CmdFile specifica il file con tutti i comandi sql
    Opt_LogFile é il file che conterrà il log con il risultato di ciascun comando presente

    ti consiglio di leggere il manuale perchè potrebbe esistere un metodo semplice like sqlcmd ….

    in realtà e per conoscenza, gli apici sono necessari perchè tra Program e Files (ma non solo) c'è uno spazio che interromperebbe l'interpretazione del comando
     
Sto caricando...

Condividi questa Pagina