diff --git a/ServerExplorer/ServerExplorer.suo b/ServerExplorer/ServerExplorer.suo index 4437704..8a6ab47 100644 Binary files a/ServerExplorer/ServerExplorer.suo and b/ServerExplorer/ServerExplorer.suo differ diff --git a/ServerExplorer/ServerExplorer/TablaDesc.cs b/ServerExplorer/ServerExplorer/TablaDesc.cs index 5b4ecfe..f0a6130 100644 --- a/ServerExplorer/ServerExplorer/TablaDesc.cs +++ b/ServerExplorer/ServerExplorer/TablaDesc.cs @@ -90,10 +90,9 @@ namespace ServerExplorer { col.Tamanho = (int)dr["Tamanho"]; } - col.Primaria = false; if (dr["TipoClave"] != DBNull.Value) { - if (((String)dr["TipoClave"]).CompareTo("PRIMARY_KEY") == 0) + if (((String)dr["TipoClave"]).Contains("PRIMARY")) { col.Primaria = true; } diff --git a/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.exe b/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.exe index e59eeac..8a62428 100644 Binary files a/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.exe and b/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.exe differ diff --git a/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.pdb b/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.pdb index 20f61e6..89384ae 100644 Binary files a/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.pdb and b/ServerExplorer/ServerExplorer/bin/Debug/ServerExplorer.pdb differ diff --git a/ServerExplorer/ServerExplorer/frmBaseDatos.Designer.cs b/ServerExplorer/ServerExplorer/frmBaseDatos.Designer.cs index 5037a7b..4a95404 100644 --- a/ServerExplorer/ServerExplorer/frmBaseDatos.Designer.cs +++ b/ServerExplorer/ServerExplorer/frmBaseDatos.Designer.cs @@ -39,12 +39,13 @@ this.colNombreColumna = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.colTipoDatos = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.colTamanho = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.colClave = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.menuBaseDatos = new System.Windows.Forms.MenuStrip(); this.archivoToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuCargar = new System.Windows.Forms.ToolStripMenuItem(); this.menuGuardar = new System.Windows.Forms.ToolStripMenuItem(); this.menuConfiguracion = new System.Windows.Forms.ToolStripMenuItem(); - this.colClave = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.btnGenerar = new System.Windows.Forms.Button(); this.menuBaseDatos.SuspendLayout(); this.SuspendLayout(); // @@ -123,7 +124,7 @@ this.lsvColumnas.FullRowSelect = true; this.lsvColumnas.Location = new System.Drawing.Point(344, 59); this.lsvColumnas.Name = "lsvColumnas"; - this.lsvColumnas.Size = new System.Drawing.Size(344, 405); + this.lsvColumnas.Size = new System.Drawing.Size(344, 376); this.lsvColumnas.TabIndex = 6; this.lsvColumnas.UseCompatibleStateImageBehavior = false; this.lsvColumnas.View = System.Windows.Forms.View.Details; @@ -142,6 +143,11 @@ // this.colTamanho.Text = "TamaƱo"; // + // colClave + // + this.colClave.Text = "Clave"; + this.colClave.Width = 71; + // // menuBaseDatos // this.menuBaseDatos.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { @@ -183,16 +189,23 @@ this.menuConfiguracion.Text = "Configuracion"; this.menuConfiguracion.Click += new System.EventHandler(this.menuConfiguracion_Click); // - // colClave + // btnGenerar // - this.colClave.Text = "Clave"; - this.colClave.Width = 71; + this.btnGenerar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.btnGenerar.Location = new System.Drawing.Point(613, 441); + this.btnGenerar.Name = "btnGenerar"; + this.btnGenerar.Size = new System.Drawing.Size(75, 23); + this.btnGenerar.TabIndex = 10; + this.btnGenerar.Text = "Generar"; + this.btnGenerar.UseVisualStyleBackColor = true; + this.btnGenerar.Click += new System.EventHandler(this.btnGenerar_Click); // // frmBaseDatos // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(700, 476); + this.Controls.Add(this.btnGenerar); this.Controls.Add(this.lsvColumnas); this.Controls.Add(this.lsvTablas); this.Controls.Add(this.btnCopiarConString); @@ -229,5 +242,6 @@ private System.Windows.Forms.ToolStripMenuItem menuGuardar; private System.Windows.Forms.ToolStripMenuItem menuConfiguracion; private System.Windows.Forms.ColumnHeader colClave; + private System.Windows.Forms.Button btnGenerar; } } \ No newline at end of file diff --git a/ServerExplorer/ServerExplorer/frmBaseDatos.cs b/ServerExplorer/ServerExplorer/frmBaseDatos.cs index 857d791..0826613 100644 --- a/ServerExplorer/ServerExplorer/frmBaseDatos.cs +++ b/ServerExplorer/ServerExplorer/frmBaseDatos.cs @@ -130,86 +130,46 @@ namespace ServerExplorer { if (lsvTablas.SelectedItems.Count == 1) { - DataTable dt; - // Determinar tabla seleccionada ListViewItem item = lsvTablas.SelectedItems[0]; + /* - // Obtener las columnas de la tabla - String[] restr_columna = { null, null, item.SubItems[0].Text, null }; - // NOTA: Catalog, Owner, Table, TableType - cnx.Open(); - dt = cnx.GetSchema("Columns", restr_columna); - dt.DefaultView.Sort="ORDINAL_POSITION"; - cnx.Close(); - - - // Mostrar "columnas" de las tablas - lsvColumnas.Items.Clear(); - foreach (DataRowView dr in dt.DefaultView) - { - ListViewItem subitem = lsvColumnas.Items.Add((String)dr["COLUMN_NAME"]); - subitem.SubItems.Add((String)dr["DATA_TYPE"]); - if (dr["CHARACTER_MAXIMUM_LENGTH"] != DBNull.Value) - { - subitem.SubItems.Add(String.Format("{0}",dr["CHARACTER_MAXIMUM_LENGTH"])); - } - } - */ - // Obtener informacion de las columnas de la tabla - SqlDataAdapter da = new SqlDataAdapter( - "select col.COLUMN_NAME as Columna, "+ - " col.DATA_TYPE as Tipo, "+ - " col.CHARACTER_MAXIMUM_LENGTH as Tamanho, "+ - " c.CONSTRAINT_TYPE as TipoClave "+ - " from INFORMATION_SCHEMA.COLUMNS as col "+ - " left join INFORMATION_SCHEMA.KEY_COLUMN_USAGE as k " + - " on col.COLUMN_NAME=k.COLUMN_NAME and "+ - " col.TABLE_NAME=k.TABLE_NAME and "+ - " col.TABLE_SCHEMA=k.TABLE_SCHEMA "+ - " left join INFORMATION_SCHEMA.TABLE_CONSTRAINTS as c "+ - " on k.CONSTRAINT_NAME=c.CONSTRAINT_NAME "+ - " WHERE col.TABLE_NAME=@nombreTabla AND "+ - " col.TABLE_SCHEMA=@nombreEsquema "+ - " order by col.ORDINAL_POSITION", - cnx); - da.SelectCommand.Parameters.AddWithValue("@nombreTabla", item.SubItems[0].Text); - da.SelectCommand.Parameters.AddWithValue("@nombreEsquema",item.SubItems[1].Text); - dt = new DataTable(); - cnx.Open(); - da.Fill(dt); - cnx.Close(); - - // Mostrar "columnas" de las tablas - lsvColumnas.Items.Clear(); - foreach (DataRow dr in dt.Rows) - { - ListViewItem subitem = lsvColumnas.Items.Add((String)dr["Columna"]); - subitem.SubItems.Add((String)dr["Tipo"]); - if (dr["Tamanho"] != DBNull.Value) - { - subitem.SubItems.Add(String.Format("{0}", dr["Tamanho"])); - } - else - { - subitem.SubItems.Add(""); - } - if (dr["TipoClave"] != DBNull.Value) - { - subitem.SubItems.Add((String)dr["TipoClave"]); - } - else - { - subitem.SubItems.Add(""); - } - } - TablaDesc td = new TablaDesc(); td.FillDesc(item.SubItems[1].Text,item.SubItems[0].Text,cnx); Type[] tipos = { typeof(ColumnaDesc) }; XmlSerializer seriador = new XmlSerializer(typeof(TablaDesc),tipos); seriador.Serialize(System.Console.Out, td); + */ + // Obtener descripcion de tabla + TablaDesc td = new TablaDesc(); + td.FillDesc(item.SubItems[1].Text, item.SubItems[0].Text, cnx); + + // Mostrar "columnas" de las tablas + lsvColumnas.Items.Clear(); + foreach (ColumnaDesc col in td.Columnas) + { + ListViewItem subitem = lsvColumnas.Items.Add(col.Nombre); + subitem.SubItems.Add(col.Tipo); + if (col.Tamanho>=0) + { + subitem.SubItems.Add(String.Format("{0}", col.Tamanho)); + } + else + { + subitem.SubItems.Add(""); + } + if (col.Primaria) + { + subitem.SubItems.Add("PK"); + } + else + { + subitem.SubItems.Add(""); + } + } + //XmlSerializer seriador = new XmlSerializer(typeof(TablaDesc)); + //seriador.Serialize(System.Console.Out, td); } } @@ -240,5 +200,9 @@ namespace ServerExplorer frm.ShowDialog(); } + private void btnGenerar_Click(object sender, EventArgs e) + { + + } } } diff --git a/ServerExplorer/ServerExplorer/frmBaseDatos.resx b/ServerExplorer/ServerExplorer/frmBaseDatos.resx index 2fbdfbb..6b02100 100644 --- a/ServerExplorer/ServerExplorer/frmBaseDatos.resx +++ b/ServerExplorer/ServerExplorer/frmBaseDatos.resx @@ -120,4 +120,7 @@ 17, 17 + + 41 + \ No newline at end of file diff --git a/ServerExplorer/ServerExplorer/frmPrincipal.cs b/ServerExplorer/ServerExplorer/frmPrincipal.cs index 9437242..e3f63ea 100644 --- a/ServerExplorer/ServerExplorer/frmPrincipal.cs +++ b/ServerExplorer/ServerExplorer/frmPrincipal.cs @@ -20,8 +20,8 @@ namespace ServerExplorer { // Crear ventana de la base de datos de pruebas //frmBaseDatos frm = new frmBaseDatos("Data Source=SSSRV3;Initial Catalog=PRUEBAS;User ID=sa;Password=SLsssrv3"); - //frmBaseDatos frm = new frmBaseDatos("Data Source=DANTE;Initial Catalog=BD_AlfonsoRodriguez;Integrated Security=True"); - frmBaseDatos frm = new frmBaseDatos("Data Source=OSKURITO;Initial Catalog=BD_AlfonsoRodriguez;Integrated Security=True"); + frmBaseDatos frm = new frmBaseDatos("Data Source=DANTE;Initial Catalog=BD_AlfonsoRodriguez;Integrated Security=True"); + //frmBaseDatos frm = new frmBaseDatos("Data Source=OSKURITO;Initial Catalog=BD_AlfonsoRodriguez;Integrated Security=True"); frm.MdiParent = this; frm.WindowState = FormWindowState.Maximized; frm.Show(); diff --git a/ServerExplorer/ServerExplorer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ServerExplorer/ServerExplorer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index 66a5136..a7a358c 100644 Binary files a/ServerExplorer/ServerExplorer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/ServerExplorer/ServerExplorer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/ServerExplorer/ServerExplorer/obj/Debug/ResGen.read.1.tlog b/ServerExplorer/ServerExplorer/obj/Debug/ResGen.read.1.tlog index 3af54e4..b3cb55e 100644 Binary files a/ServerExplorer/ServerExplorer/obj/Debug/ResGen.read.1.tlog and b/ServerExplorer/ServerExplorer/obj/Debug/ResGen.read.1.tlog differ diff --git a/ServerExplorer/ServerExplorer/obj/Debug/ResGen.write.1.tlog b/ServerExplorer/ServerExplorer/obj/Debug/ResGen.write.1.tlog index b4133fa..ab0315d 100644 Binary files a/ServerExplorer/ServerExplorer/obj/Debug/ResGen.write.1.tlog and b/ServerExplorer/ServerExplorer/obj/Debug/ResGen.write.1.tlog differ diff --git a/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.exe b/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.exe index e59eeac..8a62428 100644 Binary files a/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.exe and b/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.exe differ diff --git a/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.pdb b/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.pdb index 20f61e6..89384ae 100644 Binary files a/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.pdb and b/ServerExplorer/ServerExplorer/obj/Debug/ServerExplorer.pdb differ