{"Must declare the scalar variable "@folio"."}

Last post 01-19-2007 6:20 PM by fynne. 2 replies.

Sort Posts:

  • {"Must declare the scalar variable "@folio"."}

    01-16-2007, 5:22 PM
    • Loading...
    • Packo76
    • Joined on 09-11-2006, 3:28 PM
    • Posts 3

    I'm working with Visual Studio 2005 Express

    I'm trying to insert values to my Database but I got this Error... {"Must declare the scalar variable "@folio"."}..

    Can someone help me please.... I'm stuck

    Imports

    System.Data

    Imports System.Data.OleDb

    Public

    Class frmEmpresaAlta

    Dim Contador As Integer = 0

    Dim coneccion As OleDbConnection

    Dim comando As OleDbCommand

    Dim adapter As OleDbDataAdapter

    Dim DataSet As DataSet

    Private Sub btnCancelar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click

    Me.Close()

    End Sub

    Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click

    Dim q As String

    q =

    "INSERT INTO Empresas(folio, empresa, corto, rfc, direccion, colonia) VALUES (@folio, @empresa, @corto, @rfc, @direccion, @colonia)"

    comando =

    New OleDbCommand(q, coneccion)

    comando.Parameters.Add(

    New OleDbParameter("@folio", OleDbType.Integer)).Value = lblFolio.Text

    comando.Parameters.Add(

    New OleDbParameter("@empresa", OleDbType.VarChar, 50)).Value = txtNombre.Text.ToUpper()

    comando.Parameters.Add(

    New OleDbParameter("@corto", OleDbType.VarChar, 12)).Value = txtCorto.Text.ToUpper()

    comando.Parameters.Add(

    New OleDbParameter("@rfc", OleDbType.VarChar, 10)).Value = txtRFC.Text.ToUpper()

    comando.Parameters.Add(

    New OleDbParameter("@direccion", OleDbType.VarChar, 40)).Value = txtDireccion.Text.ToUpper()

    comando.Parameters.Add(

    New OleDbParameter("@colonia", OleDbType.VarChar, 25)).Value = txtColonia.Text.ToUpper()

    comando.Connection.Open()

    comando.ExecuteNonQuery()

    comando.Connection.Close()

    MessageBox.Show(

    "Empresa Almacenada")

    Me.Close()

    End Sub

    Public Sub New()

    ' This call is required by the Windows Form Designer.

    InitializeComponent()

    ' Add any initialization after the InitializeComponent() call.

    coneccion =

    New OleDbConnection("Provider=SQLNCLI;Server=WKS-SYSTEMAS\SQLExpress;AttachDbFilename=D:\faguilar Documents\VISUAL STUDIO 2005\Projects\Mantenimiento\Mantenimiento\Mantenimiento.mdf;Database=Mantenimiento;Trusted_Connection=Yes;")

    adapter =

    New OleDbDataAdapter("select * from Empresas", coneccion)

    DataSet =

    New DataSet()

    adapter.Fill(DataSet,

    "Empresas")

    Dim cren, nvaclave As Integer

    cren = DataSet.Tables(

    "Empresas").Rows.Count

    If (cren.Equals(0)) Then

    lblFolio.Text =

    "1"

    Else

    nvaclave = DataSet.Tables(

    "Empresas").Rows(cren - 1)(0) + 1

    lblFolio.Text = nvaclave

    End If

    txtNombre.Focus()

    End Sub

    End

    Class

     

    Filed under: ,
  • Re: {"Must declare the scalar variable "@folio"."}

    01-16-2007, 7:07 PM
    Answer
    • Loading...
    • pkellner
    • Joined on 11-12-2004, 10:42 AM
    • San Jose, California
    • Posts 3,379
    • Moderator
      TrustedFriends-MVPs

    I believe with Ole controls, you need to use ? instead of @

    HTH's.

    Peter Kellner
    http://73rdstreet.com and blogging at
    http://PeterKellner.net
    MVP, ASP.NET
  • Re: {"Must declare the scalar variable "@folio"."}

    01-19-2007, 6:20 PM
    • Loading...
    • fynne
    • Joined on 12-08-2006, 4:34 PM
    • Posts 29

    I use OLEDB and "@" works fine for me.

    I found the parameter declaration pretty confusing to read.  Normally I use:
        command.parameters.addwithvalue("@parameter_name", value)         where value is either a string or a number

    If you want to go the whole parameter definition (with data type....etc) route, I'd suggest making the parameter first, then adding it to the command in a separate statement.

Page 1 of 1 (3 items)
Microsoft Communities
Page view counter