Errore System.Data.OleDb.OleDbException

di il
1 risposte

Errore System.Data.OleDb.OleDbException

Eseguendo il codice

Dim mtable1 As New DataTable 

da questo errore 

System.Data.OleDb.OleDbException: 'Nessun valore specificato per alcuni parametri necessari.'

preciso  che in una sub precedente questa va bene

Dim mtable As New DataTable 

posto il codice

Imports System.Configuration
Imports System.IO
Imports System.Web
Imports System.Data.OleDb
Imports System.Threading
Imports System.Web.UI.WebControls
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel
Imports System.Drawing.Text
Imports System.Windows.Forms.VisualStyles.VisualStyleElement
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.ToolBar
Public Class Form7
    Private Sub Form7_Load(sender As Object, e As EventArgs) Handles MyBase.Load


        ' presento gli Impegni in scadenza 

        Dim mtable As New DataTable

        mtable = MyDBase.Table("SELECT attore, data_impegno, data_fine, " &
                         "ora_impegno, id_tipo_impegno, tipo_impegno, luogo_impegno, motivo  FROM Impegni where flag_chiuso = false ")


        '        Label11.Text = mtable.Rows.Count
        Try



            DGV1.Visible = True
            '            DGV1.Width = (860)
            DGV1.Height = (160)
            With DGV1
                .Columns.Clear()
                .DataSource = mtable
                'NUMPREV
                .ColumnHeadersDefaultCellStyle.BackColor = Color.Thistle
                .Columns(0).Width = 200
                .Columns(1).Width = 90
                .Columns(2).Width = 90
                .Columns(3).Width = 90
                .Columns(4).Width = 50
                .Columns(5).Width = 120
                .Columns(6).Width = 90
                .Columns(7).Width = 250


                .Columns(0).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(1).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(2).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(3).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(4).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(5).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(6).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(7).DefaultCellStyle.BackColor = Color.AliceBlue

                .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                '               .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                .Columns(0).ReadOnly = True
                .Columns(1).ReadOnly = True
                .Columns(2).ReadOnly = True
                .Columns(3).ReadOnly = True
                .Columns(4).ReadOnly = True
                .Columns(5).ReadOnly = True
                .Columns(6).ReadOnly = True
                .Columns(7).ReadOnly = True
                '               .Columns(2).ReadOnly = True
                .Columns(0).HeaderText = "Cliente"
                .Columns(1).HeaderText = "data impegno"
                .Columns(2).HeaderText = "data fine"
                .Columns(3).HeaderText = "ora impegno"
                .Columns(4).HeaderText = "id impegno"
                .Columns(5).HeaderText = "tipo impegno"
                .Columns(6).HeaderText = "luogo impegno"
                .Columns(7).HeaderText = "motivo"
                .Rows(0).Selected = True
                DGV1.Focus()

            End With
        Catch ex As Exception
        End Try


        Dim mtable1 As New DataTable    """""""""""""""questo da errore""""""""""

        mtable1 = MyDBase.Table("SELECT RAG_SOCIALE, data_incontro, ora_incontro, " &
                         "durata_incontro, id_tipo_incontro, Tipo_incontro, luogo_impegno, evidenza  FROM Incontri where flag_chiuso = false ")


        '        Label11.Text = mtable.Rows.Count
        Try
            DGV2.Visible = True
            '            DGV1.Width = (860)
            DGV1.Height = (160)
            With DGV2
                .Columns.Clear()
                .DataSource = mtable1
                'NUMPREV
                .ColumnHeadersDefaultCellStyle.BackColor = Color.Thistle
                .Columns(0).Width = 200
                .Columns(1).Width = 90
                .Columns(2).Width = 90
                .Columns(3).Width = 90
                .Columns(4).Width = 50
                .Columns(5).Width = 120
                .Columns(6).Width = 90
                .Columns(7).Width = 250


                .Columns(0).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(1).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(2).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(3).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(4).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(5).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(6).DefaultCellStyle.BackColor = Color.AliceBlue
                .Columns(7).DefaultCellStyle.BackColor = Color.AliceBlue

                .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
                .Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                '               .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                .Columns(0).ReadOnly = True
                .Columns(1).ReadOnly = True
                .Columns(2).ReadOnly = True
                .Columns(3).ReadOnly = True
                .Columns(4).ReadOnly = True
                .Columns(5).ReadOnly = True
                .Columns(6).ReadOnly = True
                .Columns(7).ReadOnly = True
                '               .Columns(2).ReadOnly = True
                .Columns(0).HeaderText = "Cliente"
                .Columns(1).HeaderText = "data incontro"
                .Columns(2).HeaderText = "ora incontro"
                .Columns(3).HeaderText = "durata incontro"
                .Columns(4).HeaderText = "id incontro"
                .Columns(5).HeaderText = "tipo incontro"
                .Columns(6).HeaderText = "luogo impegno"
                .Columns(7).HeaderText = "evidenza"
                .Rows(0).Selected = True
                DGV2.Focus()

            End With
        Catch ex As Exception
        End Try
    End Sub

1 Risposte

  • Re: Errore System.Data.OleDb.OleDbException

    Ritengo improbabile che l'errore si verifichi sulla riga

    Dim mtable1 As New DataTable

    come hai indicato nel tuo commento, poiché è una chiamata a un costruttore per creare un oggetto.

    E' ben più probabile che l'errore riguardo l'esecuzione dello statement SQL (quella "SELECT..." che stai cercando di eseguire), e che questo comando contenga un campo con nome errato che viene preso come identificativo di un parametro non valorizzato.

    Analizza meglio il flusso del codice e il punto esatto in cui l'eccezione si verifica.

Devi accedere o registrarti per scrivere nel forum
1 risposte