Commit inicial
This commit is contained in:
136
ServerExplorer/frmServidores.cs
Normal file
136
ServerExplorer/frmServidores.cs
Normal file
@@ -0,0 +1,136 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using System.Data.Sql;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data.SqlTypes;
|
||||
|
||||
namespace ServerExplorer
|
||||
{
|
||||
public partial class frmServidores : Form
|
||||
{
|
||||
public frmServidores()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void btnListarServidores_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Obtener listado de servidores
|
||||
SqlDataSourceEnumerator enumerador = SqlDataSourceEnumerator.Instance;
|
||||
DataTable servidores = enumerador.GetDataSources();
|
||||
lsvServidores.Items.Clear();
|
||||
lsvBBDD.Items.Clear();
|
||||
foreach (DataRow dr in servidores.Rows)
|
||||
{
|
||||
// Nombre del servidor
|
||||
ListViewItem item = lsvServidores.Items.Add((String)dr["ServerName"]);
|
||||
|
||||
// Nombre de la instancia
|
||||
if (dr["InstanceName"] == System.DBNull.Value)
|
||||
{
|
||||
item.SubItems.Add("");
|
||||
}
|
||||
else
|
||||
{
|
||||
item.SubItems.Add((String)dr["InstanceName"]);
|
||||
}
|
||||
|
||||
// Numero de version
|
||||
if (dr["Version"] == System.DBNull.Value)
|
||||
{
|
||||
item.SubItems.Add("???");
|
||||
}
|
||||
else
|
||||
{
|
||||
item.SubItems.Add((String)dr["Version"]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void lsvServidores_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (lsvServidores.SelectedItems.Count > 0)
|
||||
{
|
||||
ListViewItem item = lsvServidores.SelectedItems[0];
|
||||
if (item.SubItems[1].Text.CompareTo("")==0)
|
||||
{
|
||||
// Servidor sin subinstancias
|
||||
txtServidor.Text = item.SubItems[0].Text;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Servidor con subinstancias
|
||||
txtServidor.Text = item.SubItems[0].Text+"/"+item.SubItems[1].Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void btnListarBBDD_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Construir cadena de conexion
|
||||
SqlConnectionStringBuilder constructor = new SqlConnectionStringBuilder();
|
||||
constructor.DataSource = txtServidor.Text;
|
||||
constructor.InitialCatalog = "master";
|
||||
if (txtUsuario.Text.CompareTo("") == 0)
|
||||
{
|
||||
constructor.IntegratedSecurity = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
constructor.UserID = txtUsuario.Text;
|
||||
constructor.Password = TxtContrasenha.Text;
|
||||
}
|
||||
|
||||
// Obtener todas las bases de datos
|
||||
SqlConnection cnx = new SqlConnection(constructor.ConnectionString);
|
||||
cnx.Open();
|
||||
DataTable dt = cnx.GetSchema("Databases");
|
||||
cnx.Close();
|
||||
|
||||
|
||||
// Mostrar bases de datos
|
||||
lsvBBDD.Items.Clear();
|
||||
foreach (DataRow dr in dt.Rows)
|
||||
{
|
||||
ListViewItem item = lsvBBDD.Items.Add((String)dr["database_name"]);
|
||||
item.SubItems.Add(((DateTime)dr["create_date"]).ToShortDateString());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void lsvBBDD_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
if (lsvBBDD.SelectedItems.Count == 1)
|
||||
{
|
||||
// Construir cadena de conexion final
|
||||
SqlConnectionStringBuilder constructor = new SqlConnectionStringBuilder();
|
||||
constructor.DataSource = txtServidor.Text;
|
||||
constructor.InitialCatalog = (String)lsvBBDD.SelectedItems[0].SubItems[0].Text;
|
||||
if (txtUsuario.Text.CompareTo("") == 0)
|
||||
{
|
||||
constructor.IntegratedSecurity = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
constructor.UserID = txtUsuario.Text;
|
||||
constructor.Password = TxtContrasenha.Text;
|
||||
}
|
||||
|
||||
// Llamar a la venta de la base de datos
|
||||
frmBaseDatos frm = new frmBaseDatos(constructor.ConnectionString);
|
||||
frm.MdiParent = this.MdiParent;
|
||||
frm.Show();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user