Testare campo tipo Autoincrement (MDB)

di olmof il
9 risposte
Ciao a tutti,
avrei la necessità di individuare quando un campo di un DB Access (mdb) sia di tipo "Numerazione Automatica".
Ho provato con questo codice, ma mi ritorna sempre False:

Dim xc As New OleDb.OleDbConnection(se_StrConn & DBName)
xc.Open()
Dim Command As New OleDb.OleDbCommand
Command.Connection = xc
Command.CommandType = CommandType.Text
Command.CommandText = "Select * from [" & NomeTabella & "]"
Tabella.Load(Command.ExecuteReader)

For Each C as datacolumn in Tabella.columns
       if  c.Autoincrement = true then

       ......

       else

      .......

       end if
Next
Leggendo sul web mi sembra che la proprietà da controllare si Autoincrement ma forse sbaglio? Le altre proprietà le leggo tranquillamente.

Grazie

9 Risposte

  • Mostra tutto il codice
  • Intanto grazie,
    Cosa manca le variabili?
    Il mio problema è solo che fallisce il test su c.Autoincrement
    Comunque:
    
    se_StrConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
    dbname = "mydb.mdb"
    NomeTabella = "clienti"
    
    Se serve altro dimmi...
    Ciao
  • Sicuro che il campo è di tipo contatore? Puoi mandare lo zip del file mdb vuoto?
  • Nessun problema, ma come faccio ad allegare lo zip?
  • Usa un tuo dropbox o un sito gratuito
    ..
  • Usa questo codice
    
    Dim dataAdapter As New OleDb.OleDbDataAdapter("Select * from [" & NomeTabella & "]", se_StrConn + dbname)
    dataAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
    dataAdapter.Fill(Tabella)
    dataAdapter.Dispose()
    
    For Each C as datacolumn in Tabella.columns
           if  c.Autoincrement  Then
    
           ......
    
           else
    
          .......
    
           end if
    Next
    
  • OK, lo provo appena possibile, per il momento grazie.
  • Provato e funziona (ovviamente).....

    Grazie
Devi accedere o registrarti per scrivere nel forum
9 risposte