I've never used osql before but our setup is getting to the point where we have so many databases that it's becoming a pain in the rear end to keep them up to date when we release new software versions.
My solution to this was to put the database update file (containing all new DDL, DML, stored procs etc) that we normally run manually against each database onto the production server and use OSQL to execute it against each relevant database through a stored proc that can loop through the databases.
Having never used OSQL before I'm just trying to test it out on our development server... but I can't for the life of me figure it out.
I've created a file thus:
SET CLIENT_VERSION_ID = '894'
which I've saved to Temp and I'm trying to execute it via osql with the following command:
This will be my final post for this morning!
sqlcmd is more feature rich than oSQL. I'm not even certain you can pass parameters to oSQL. As such, I would make that switch now before you invest any more time.