check SQLCMD. Form command prompt ...
for all the sql server instance in a network - sqlcmd -L
to get all the database name from a sql server instance -- sqlcmd -q"Select *from sys.databases' -SserverName -Ppassword
Madhu
|||There is no way to pull a list of databases from the servers without connecting to the databases. sqlcmd with the -L switch can output all the SQL Servers on your Windows network. You would need to log into each one and pull the database list from the master.dbo.sysdatabases or sys.databases objects to see what databases are available on each.|||That will work fine. Is there any way I can run sqlcmd -L in a vb.net program and get the results put into a string array? I am writing an application that uses SQL Server and I want the servers/databases to be put into combo boxes or list boxes to make it easier to select which server/database to use.|||I found something google that will work perfectly for what I need. Here is the code:
Code Snippet
Try
Dim myprocess As New Process
Dim StartInfo As New System.Diagnostics.ProcessStartInfo
StartInfo.FileName = "cmd" 'starts cmd window
StartInfo.RedirectStandardInput = True
StartInfo.RedirectStandardOutput = True
StartInfo.UseShellExecute = False 'required to redirect
StartInfo.CreateNoWindow = True 'creates no cmd window
myprocess.StartInfo = StartInfo
myprocess.Start()
Dim SR As System.IO.StreamReader = myprocess.StandardOutput
Dim SW As System.IO.StreamWriter = myprocess.StandardInput
SW.WriteLine("sqlcmd -L") 'the command you wish to run.....
SW.WriteLine("exit") 'exits command prompt window
Me.txtOutput.Text = SR.ReadToEnd 'returns results of the command window
SW.Close()
SR.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Thanks for your help in getting me this far! I really appreciate it
No comments:
Post a Comment