Как прокомментировал @jmcilhinney, измените запрос вставки, чтобы использовать параметры, так как это будет легче читать и обеспечить, чтобы количество значений соответствовало количеству столбцов.
Вот некоторый код шаблона, который вы можете расширить:
Dim InsertCmdText As String =
"Insert into tbl_clients(clients_record_num,clients_client_id,clients_name,clients_contact_number,clients_address,clients_industry,clients_status,clients_delegate,clients_notes) " &
"values (@clients_record_num,@clients_client_id,@clients_name,@clients_contact_number,@clients_address,@clients_industry,@clients_status,@clients_delegate,@clients_notes)"
Dim SqlConnectionString As String = "Your Connection Info"
Using cmd As New SqlCommand(InsertCmdText, New SqlConnection(SqlConnectionString))
Try
cmd.Parameters.AddWithValue("@clients_record_num", "Value Needed")
cmd.Parameters.AddWithValue("@clients_client_id", "Value Needed")
cmd.Parameters.AddWithValue("@clients_name", "Value Needed")
'repeat above for all params
cmd.Connection.Open()
cmd.ExecuteNonQuery()
Catch ex As Exception
'Handle your exception
Finally
cmd.Connection.Close()
End Try
End Using
В качестве альтернативы используйте Parameters.Add вместо AddWithValue. Для обсуждения достоинств каждого см. Параметры SqlCommand Add против AddWithValue