I have 3 related questions.
1) I need to have a snapshot of an SQLSERVER database. According to documentation, I can use
BACKUP DATABASE [MyDatabase] TO DISK ...
But it creates the backup file in database server itself. Is there a way to get it created in client machine?
2) There is another option to Generate Scripts
in Management Studio. Is there a way to call this programmatically (JDBC)? [Note:I'm using java]
3) Are there any tools (like mysqldump in MySQL) which I can use to get a snapshot of a database?
Your questions
This term is actually "How to Backup SQL Databases to a Network Share". Beware that there are some caveats with this approach.
This can be used from .NET languages via SQL Server Management Objects (SMO).
Other third party tools exists like Red Gate Sql Server Backup