none
Hacer una consulta a MySql desde Visual basic

    Question

  • Buenas

    Tengo un problema es el ultimo para terminar un proyecto ( esta dada por una base de datos y VB ). El problema es el siguiente:

    Tengo una tabla inventario

    vt_codigo    vt_cantidad

      101                  10

      102                   13

      103                   20


    Lo que deseo es saber si la cantidad es menor o mayor , si fuera menor deberia mostrarme el mensaje ("Si se puede comprar el producto") y si es mayor deberia mostrarme el mensaje ("No se puede realizar la compra ya que excede")


    Ingreso por Texbox1 , Texbox2 ademas de un boton

    en Texbox1 ingreso el codigo , en el Texbox2 ingreso la cantidad y el boton debe mostrarme el mensaje. Por ejemplo:

    En el Texbox1 ingreso 101 y en el Texbox2 ingreso 11 segido presiono el botton deberia mostrarme el mensaje "No se puede realizar la compra ya que excede"

    El codigo que estoy utilizando es la siguiente

    Private Sub boton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles boton.Click
    
          MySqlConnection = New MySqlConnection()
            MySqlConnection.ConnectionString = " server=127.0.0.1; user id=davz; password=123456; database=BD1;"
    
            MySqlConnection.Open()
    
            Dim adapter As New MySqlDataAdapter
            Dim sql As String
       
            sql = " SELECT * FROM inventario WHERE vt_codigo='" & TextBox1.Text & "' "
            Dim commando As New MySqlCommand
            commando.Connection = MySqlConnection
            commando.CommandText = sql
            adapter.SelectCommand = commando
            Dim dato As MySqlDataReader
            dato = commando.ExecuteReader()
    
            'Mi problema es en sql como consigo colocarle el if para que me muestre el mensaje. Como en el ejemplo
    
        End Sub
    
    
          

    Gracias por la respuesta


    Sunday, August 26, 2012 1:45 AM

Answers

  • quizas esto podria ayudar

    Private Sub boton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles boton.Click
    
    	Dim connstring As String = " server=127.0.0.1; user id=davz; password=123456; database=BD1;"
    	Using conn As New MySqlConnection(connstring)
    		conn.Open()
    
    		Dim sql As String = " SELECT vt_cantidad FROM inventario WHERE vt_codigo= ?cod"
    		Dim cmd As New MySqlCommand(sql, conn)
    		cmd.Parameters.AddWithValue("?cod", Convert.ToInt32(TextBox1.Text))
    		Dim temp As Object = cmd.ExecuteScalar()
    		
    		If temp IsNot Nothing Then
    		
    			Dim cant As Integer = Convert.ToInt32(temp)
    			
    			If Convert.ToInt32(Textbox2.Text) > cant then
    				MessageBox.Show("No se puede realizar la compra ya que excede")
    			End If
    		
    		End If
    		
    	End Using
    
    End Sub


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Sunday, August 26, 2012 3:22 AM
  • Lo que podes es recuperar el campo cantidad y guardarlo en una variable según el id ingresado y luego comparas los valores.

    Using cnn As New MySqlConnection(" server=127.0.0.1; user id=davz; password=123456; database=BD1;")
          cnn.Open()
    
          Dim sql As String = " SELECT vt_cantidad FROM inventario WHERE vt_codigo= @cod"
          Dim cmd As New MySqlCommand(sql, conn)
          cmd.Parameters.AddWithValue("@cod", Convert.ToInt32(TextBox1.Text))
          Dim reader As SqlDataReader = cmd.ExecuteReader()
          If reader.Read() Then
             Dim cant As Integer= Convert.ToInt32(reader("vt_cantidad").ToString())
          End If
    
          if Convert.ToInt32(txtcodigo.Text) > cant Then     
    	 MessageBox.Show("No se puede realizar la compra ya que excede")	
          End If
    		
    End Using

    Saludos.


    Sunday, August 26, 2012 3:43 AM

All replies

  • quizas esto podria ayudar

    Private Sub boton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles boton.Click
    
    	Dim connstring As String = " server=127.0.0.1; user id=davz; password=123456; database=BD1;"
    	Using conn As New MySqlConnection(connstring)
    		conn.Open()
    
    		Dim sql As String = " SELECT vt_cantidad FROM inventario WHERE vt_codigo= ?cod"
    		Dim cmd As New MySqlCommand(sql, conn)
    		cmd.Parameters.AddWithValue("?cod", Convert.ToInt32(TextBox1.Text))
    		Dim temp As Object = cmd.ExecuteScalar()
    		
    		If temp IsNot Nothing Then
    		
    			Dim cant As Integer = Convert.ToInt32(temp)
    			
    			If Convert.ToInt32(Textbox2.Text) > cant then
    				MessageBox.Show("No se puede realizar la compra ya que excede")
    			End If
    		
    		End If
    		
    	End Using
    
    End Sub


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Sunday, August 26, 2012 3:22 AM
  • Lo que podes es recuperar el campo cantidad y guardarlo en una variable según el id ingresado y luego comparas los valores.

    Using cnn As New MySqlConnection(" server=127.0.0.1; user id=davz; password=123456; database=BD1;")
          cnn.Open()
    
          Dim sql As String = " SELECT vt_cantidad FROM inventario WHERE vt_codigo= @cod"
          Dim cmd As New MySqlCommand(sql, conn)
          cmd.Parameters.AddWithValue("@cod", Convert.ToInt32(TextBox1.Text))
          Dim reader As SqlDataReader = cmd.ExecuteReader()
          If reader.Read() Then
             Dim cant As Integer= Convert.ToInt32(reader("vt_cantidad").ToString())
          End If
    
          if Convert.ToInt32(txtcodigo.Text) > cant Then     
    	 MessageBox.Show("No se puede realizar la compra ya que excede")	
          End If
    		
    End Using

    Saludos.


    Sunday, August 26, 2012 3:43 AM