VB.NET中的条件表达式中的数据类型不匹配..? [英] Data type mismatch in criteria expression in VB.NET ..?

查看:55
本文介绍了VB.NET中的条件表达式中的数据类型不匹配..?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

每当我运行表单时,我收到错误标准表达式中的数据类型不匹配



我尝试过: <


whenever I run the form I got an error that "data type mismatch in criteria expression"

What I have tried:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim a As Integer
        a = EMI_AmountTextBox.Text
        Dim b As Integer
        b = Late_Fine_ChargeTextBox.Text

        Total_AmountTextBox.Text = a + b 'Late_Fine_ChargeTextBox.Text + EMI_AmountTextBox.Text

        provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
        datafile = "C:\asp.net\Loan Management System\Database\Receive_emi.mdb"
        connString = provider & datafile
        myConnection.ConnectionString = connString
        myConnection.Open()
        Dim str As String
        str = "Insert into Receive_emi([C_ID],[ReceiptNo],[No_of_payment],[Receipt_Date],[EMI__Date],[EMI_Amount],[Late_Fine_Charge],[Total_Amount])values(?,?,?,?,?,?,?,?)"
        Dim cmd As OleDbCommand = New OleDbCommand(str, myConnection)

        cmd.Parameters.Add(New OleDbParameter("C_ID", CType(C_IDTextBox.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("ReceiptNo", CType(ReceiptNoTextBox.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("No_of_payment", CType(No_of_paymentTextBox.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("Receipt_Date", CType(Receipt_DateDateTimePicker.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("EMI__Date", CType(EMI__DateDateTimePicker.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("EMI_Amount", CType(EMI_AmountTextBox.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("Late_Fine_Charge", CType(Late_Fine_ChargeTextBox.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("Total_Amount", CType(Total_AmountTextBox.Text, String)))
        Try
            cmd.ExecuteNonQuery()
            cmd.Dispose()
            myConnection.Close()
            Me.Hide()

            User_Home_page.Show()


        Catch ex As Exception

            MsgBox(ex.Message)
       End Try

    End Sub

推荐答案

好..我认为这是你处理参数的方式。请尝试这样做:

Ok .. I think it is the way you are handling your parameters. Try this instead:
cmd.Parameters.AddWithValue("C_ID", C_IDTextBox.Text)
cmd.Parameters.AddWithValue("ReceiptNo", ReceiptNoTextBox.Text)
cmd.Parameters.AddWithValue("No_of_payment", No_of_paymentTextBox.Text)
cmd.Parameters.AddWithValue("Receipt_Date", Receipt_DateDateTimePicker.Value)
cmd.Parameters.AddWithValue("EMI__Date", EMI__DateDateTimePicker.Value)
cmd.Parameters.AddWithValue("EMI_Amount", EMI_AmountTextBox.Text)
cmd.Parameters.AddWithValue("Late_Fine_Charge", Late_Fine_ChargeTextBox.Text)
cmd.Parameters.AddWithValue("Total_Amount", Total_AmountTextBox.Text)


我的意思是:
Dim a As Integer = cint(EMI_AmountTextBox.Text)
Dim b As Integer = cint(Late_Fine_ChargeTextBox.Text)

Total_AmountTextBox.Text = (a + b).toString   'Late_Fine_ChargeTextBox.Text + EMI_AmountTextBox.Text


这篇关于VB.NET中的条件表达式中的数据类型不匹配..?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆