Click here to Skip to main content
15,885,878 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
VB
Imports System.Data.OleDb

Public Class New_Vessel
    Dim provider As String
    Dim dataFile As String
    Dim connString As String
    Dim myConnection As OleDbConnection = New OleDbConnection

    Private Sub ListOfVesselsBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Me.Validate()
        Me.ListOfVesselsBindingSource.EndEdit()
        Me.TableAdapterManager.UpdateAll(Me.InquiriesDataSet)

    End Sub

    Private Sub New_Vessel_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: This line of code loads data into the 'InquiriesDataSet.ListOfVessels' table. You can move, or remove it, as needed.
        Me.ListOfVesselsTableAdapter.Fill(Me.InquiriesDataSet.ListOfVessels)
    End Sub

    Private Sub BTNVessel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVessel.Click

        'For 32 bit OS
        'provider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
        'provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="

        provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
        dataFile = "p:\inquiries.mdb"
        connString = provider & dataFile
        myConnection.ConnectionString = connString

        myConnection.Open()

        Dim str As String

        ' Insert Textbox values into table
        str = "insert into ListOfVessels ([VesselCompanyName], [VesselBuild], [VesselType], [VesselGross], [VesselDW], [VesselFlag], [VesselImoNo], ) values (?, ?, ?, ?, ?, ?, ?)"

        Dim cmd As OleDbCommand = New OleDbCommand(str, myConnection)

        cmd.Parameters.Add(New OleDbParameter("VesselCompanyName", CType(TBNVesselName.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselBuild", CType(TBNVesselBuild.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselType", CType(TBNVesselType.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselGross", CType(TBNVesselGross.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselDW", CType(TBNVesselDW.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselFlag", CType(TBNVesselFlag.Text, String)))
        cmd.Parameters.Add(New OleDbParameter("VesselImoNo", CType(TBNVesselIMONo.Text, String)))

        Try
            cmd.ExecuteNonQuery()
            cmd.Dispose()
            myConnection.Close()
            TBNVesselName.Clear()
            TBNVesselBuild.Clear()
            TBNVesselType.Clear()
            TBNVesselGross.Clear()
            TBNVesselDW.Clear()
            TBNVesselFlag.Clear()
            TBNVesselIMONo.Clear()
        Catch ex As Exception
            MsgBox(ex.Message)

        End Try

        Me.Close()
    End Sub
End Class


VesselBuild, VesselGross, VesselDW are integer

I receive the eeror syntax error in insert into statement
Posted
Updated 29-Jul-15 6:21am
v3
Comments
[no name] 29-Jul-15 12:20pm    
Looks like you have and extra comma after [VesselImoNo],

Hard to tell though reading unformatted code >hint, hint <.

1 solution

You have an extra comma in the end of the column list in the statement. Instead of
VB
str = "insert into ListOfVessels ([VesselCompanyName], [VesselBuild], [VesselType], [VesselGross], [VesselDW], [VesselFlag], [VesselImoNo], ) values (?, ?, ?, ?, ?, ?, ?)"

try
VB
str = "insert into ListOfVessels ([VesselCompanyName], [VesselBuild], [VesselType], [VesselGross], [VesselDW], [VesselFlag], [VesselImoNo] ) values (?, ?, ?, ?, ?, ?, ?)"
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900