DATASET Y SQL 2008 EN VB NET
Publicado por Jorge Ferreira (4 intervenciones) el 11/01/2012 18:02:29
Hola, me estoy iniciando en vb net y tengo el siguiente problema.
En un formulario tengo un botón que hace una consulta a una base sql y el contenido lo muestro en un datagriew a través de un dataset. Consigo mostrarlo la primera vez, pero a la segunda vez que le doy al botón me salta la siguiente excepción.
"El nombre de variable '@rpm' ya se ha declarado. Los nombres de variable deben ser únicos en cada lote de consultas o procedimiento almacenado."
El código que tengo es el siguiente:
Dim conexion As New SqlClient.SqlConnection("Data Source=AIN0010C;Initial Catalog=SQLCentroControl;Integrated Security=True")
Dim comando As New SqlCommand("Select Id_Central, Fecha, Rpm from ChRiofrio where Rpm > @rpm", conexion)
Dim ds As DataSet
Dim da As SqlDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
conexion.Open()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
comando.CommandType = CommandType.Text
comando.Parameters.Add("@rpm", SqlDbType.Float).Value = CSng(TextBox1.Text)
da = New SqlDataAdapter(comando)
ds = New DataSet
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0).DefaultView
End Sub
Alguien me podría decir que es lo que hago mal.
En un formulario tengo un botón que hace una consulta a una base sql y el contenido lo muestro en un datagriew a través de un dataset. Consigo mostrarlo la primera vez, pero a la segunda vez que le doy al botón me salta la siguiente excepción.
"El nombre de variable '@rpm' ya se ha declarado. Los nombres de variable deben ser únicos en cada lote de consultas o procedimiento almacenado."
El código que tengo es el siguiente:
Dim conexion As New SqlClient.SqlConnection("Data Source=AIN0010C;Initial Catalog=SQLCentroControl;Integrated Security=True")
Dim comando As New SqlCommand("Select Id_Central, Fecha, Rpm from ChRiofrio where Rpm > @rpm", conexion)
Dim ds As DataSet
Dim da As SqlDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
conexion.Open()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
comando.CommandType = CommandType.Text
comando.Parameters.Add("@rpm", SqlDbType.Float).Value = CSng(TextBox1.Text)
da = New SqlDataAdapter(comando)
ds = New DataSet
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0).DefaultView
End Sub
Alguien me podría decir que es lo que hago mal.
Valora esta pregunta


0