Você está na página 1de 7

Imports System.Data Imports System.Data.

SqlClient Public Class Form1 Dim Connections As String = GetConnectionString() Dim _mysqlConexion Dim _sqlCommand As New SqlCommand Dim row As DataRow Dim _idEstu As Integer Dim _nombre As String Dim _apellido As String Dim _direccion As String Dim table As DataTable Private Function RealizarConsulta() As DataTable table = MakeNamesTable() Using _mysqlConexion As New SqlConnection(Connections) _mysqlConexion.Open() _sqlCommand = New SqlClient.SqlCommand("Select * from ESTUDIANTE", _mysqlConexion) Dim reader As SqlDataReader = _sqlCommand.ExecuteReader()

While reader.Read() row = table.NewRow() row("id") = reader.Item(1) row("nombre") = reader.Item(2) row("apellido") = reader.Item(3) row("direccion") = reader.Item(4) row("telefono") = reader.Item(5) table.Rows.Add(row) End While

reader.Close() End Using Return table End Function Private Function MakeNamesTable() As DataTable Dim nombreTable As DataTable = New DataTable("TempESTUDIANTE") Dim ColumnId As DataColumn

ColumnId = New DataColumn() ColumnId.DataType = System.Type.GetType("System.Int32") ColumnId.ColumnName = "Id" ColumnId.Unique = True nombreTable.Columns.Add(ColumnId)

Dim columnNombre As DataColumn columnNombre = New DataColumn columnNombre.DataType = System.Type.GetType("System.String") columnNombre.ColumnName = "Nombre" columnNombre.DefaultValue = "Fname" nombreTable.Columns.Add(columnNombre)

Dim columnApellido As DataColumn columnApellido = New DataColumn columnApellido.DataType = System.Type.GetType("System.String") columnApellido.ColumnName = "Apellido" columnApellido.DefaultValue = "FApellido" nombreTable.Columns.Add(columnApellido)

Dim columnDireccion As DataColumn columnDireccion = New DataColumn columnDireccion.DataType = System.Type.GetType("System.String") columnDireccion.ColumnName = "Direccion" columnDireccion.DefaultValue = "FDireccion" nombreTable.Columns.Add(columnDireccion)

Return nombreTable End Function Private Sub _btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _btnMostrar.Click RealizarConsulta() _dgvestudiante.DataSource = RealizarConsulta() End Sub Private Function GetConnectionString() As String ' To avoid storing the connection string in your code, ' you can retrieve it from a configuration file, using the ' System.Configuration.ConfigurationSettings.AppSettings property ' Return "Data Source=.\\SQLEXPRESS; Database=Miconexion;integrated security=True;" Return "Initial Catalog=Miconexion; Data Source=Tecnico-pc; integrated security=True; persist security info=true;" End Function

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Private Sub _btnInser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _btnInser.Click Using _mysqlConexion As New SqlConnection(Connections) _mysqlConexion.Open() If DatosValidos() Then Dim id As Integer = MaximoId() Dim sql As String = "Insert into ESTUDIANTE(id_estudiante,nombre,apellido,direccion)values('(1)','(2)',' (3)')" sql = String.Format(sql, id, _txtNom.Text, _txtApe.Text, _txtDir.Text) _sqlCommand = New SqlCommand(sql, _mysqlConexion) _sqlCommand.ExecuteNonquery() _dgvestudiante.DataSource = RealizarConsulta() End If End Using End Sub Private Function MaximoId() As Integer Dim res As Integer = 0 Dim max As Integer = 0 Using _mysqlConexion As New SqlConnection(Connections) _mysqlConexion.Open() _sqlCommand = New SqlCommand("Select MAX (Id_estudiante) from ESTUDIANTE", _mysqlConexion) Dim reader As SqlDataReader = _sqlCommand.ExecuteReader() While reader.Read() max = Convert.ToInt32(reader(0)) End While reader.Close()

res = max + 1 End Using Return res End Function Private Function DatosValidos() As Boolean Dim res As Boolean = True _epdError.Clear() _txtNom.Text = _txtNom.Text.Trim() _txtApe.Text = _txtApe.Text.Trim() _txtDir.Text = _txtDir.Text.Trim() If _txtNom.Text = String.Empty Then res = False _epdError.SetError(_txtNom, "El campo nombre esta vacio") End If If _txtApe.Text = String.Empty Then res = False _epdError.SetError(_txtApe, "El campo apellido esta vacio") End If If _txtDir.Text = String.Empty Then res = False _epdError.SetError(_txtDir, "El campo direccion esta vacio") End If Return res End Function

Private Sub _btnLimp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _btnLimp.Click _epdError.Clear() _txtNom.Text = String.Empty

_txtApe.Text = String.Empty _txtDir.Text = String.Empty _txtNom.Focus() End Sub

Private Sub _btnActu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _btnActu.Click If DatosValidos() Then actualizardatos(_idEstu) End If End Sub Private Sub actualizardatos(ByVal idestudiante As Integer) Using _mysqlConexion As New SqlConnection(Connections) _mysqlConexion.Open() Dim sql As String = "Update ESTUDIANTE set nombre = '(1)', apellido = '(2)', direccion = (3)" sql = String.Format(sql, _txtNom.Text, _txtApe.Text, _txtDir.Text, idEstu) _sqlCommand = New SqlCommand(sql, _mysqlConexion) _sqlCommand.ExecuteNonQuery() _dgvEstudiante.DataSource = RealizarConsulta() End Using End Sub Private Sub _dgvEstudiante_RowEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles _dgvEstudiante.RowEnter _ideEstu = Convert.ToInt32(_dgvEstudiante.Rows(e.RowIndex).Cells(0).Value) _Nomb = Convert.ToString(_dgvEstudiante.Rows(e.RowIndex).Cells(1).Value) _apellido = Convert.ToString(dgvEstudiante.Rows(e.RowIndex).Cells(2).Value)

_direccion = Convert.ToString(_dgvEstudiante.Rows(e.RowIndex).Cells(3).Value) Visualizar() End Sub Private Sub Visualizar() _txtNom.Text = _Nomb _txtApe.Text = _apellido _txtDir.Text = _direccion End Sub

End Class

Você também pode gostar