IMHO, per non inserire password in chiaro nel file batch , una buona soluzione è usare ( ... ma va abilitata)
l'autenticazione integrata di windows;
in questo caso l'utente che si presenta a sql server sarà quello che esegue il batch (... probabilmente il batch sarà schedulato)

Se bel ricordo il flag da usare per in questo caso è "-E" ... ma puoi facilmente verificare eseguendo osql/sqlcmd /?.

Ultima nota: puoi usare SqlCmd.exe invece di osql.exe che è stato lasciato solo per retro compatibilità

HTH