Newsgroup: it.comp.lang.visual-basic
Titolo: cercare campo di una tabella

ciao a tutti,
vi ringrazio anticipatamente dell'aiuto che mi date
non riesco a trovare un metodo di un recordset per cercare un campo in una
tabella.
Quello che vorrei fare è cercarlo e , se non lo trovo, lo aggiungo.
Vi posto il codice ( scusate i caratteri in maiuscolo: non voglio gridare ma
evidenziare i commenti ;-)
'TabCorrispondenze  è la tabella nella quale cercare il campo
'Tabarchivio è il campo da cercare
Sub RiempiCorrispondenze(ByVal TabCorrispondenze As String, ByVal
TabArchivio As String, ByVal NumeroColonne As Integer)
'dichiarazioni
Dim Dbtemp As Database
Dim Rec As Recordset
Dim RecTemp As Recordset
Dim DbCorrispondenze As Database
Dim i As Integer
    Set DbCorrispondenze = OpenDatabase(App.Path & "\Corrispondenze.mdb")
    Set Dbtemp = OpenDatabase(App.Path & "\ArchivioCorrente.mdb")
    Set Rec = DbCorrispondenze.OpenRecordset(TabCorrispondenze)
    Set RecTemp = Dbtemp.OpenRecordset(TabArchivio)
    For i = 0 To NumeroColonne
     'MO ARRIVANO I CAZZI!!!:-(((((
        With Rec
            .MoveFirst             'QUI MI DA ERRORE NESSUN RECORD CORRENTE
             'QUI MI DICE "OPERAZIONE NON SUPPORTATA PER QUESTO
             'TIPO DI OGGETTO
            .FindNext "select Tabarchivio from .fields(i).name"
            If .NoMatch = True Then                       'QUI NEMMENO CI
SONO ARRIVATO
         'DA QUI IN POI FUNZIONA MA QUANDO INCONTRA UN CAMPO GIà PRESENTE
NELLA TABELLA
         'E TENTA DI SCRIVERLO, MI DA ERRORE PERCHè CI PUò ESSERE SOLO UN
CAMPO CON
         'QUEL NOME
                .AddNew
                !NomeLogico = RecTemp.Fields(i).Name
                !NomeFisico = RecTemp.Fields(i).Name
                .Update
            End If
        End With
    Next i
    RecTemp.Close
    Rec.Close
    DbCorrispondenze.Close
Grazie a tutti per l'aiuto

 Dim i As Integer
[...]
    In primis venerare DAOs... aut ADOs?
    (Verg. Geo. I)
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------

             .FindNext "select Tabarchivio from .fields(i).name"
Infatti: hai aperto il recordset in modalità Table...
Inoltre: hai _almeno_ letto la sintassi della findnext?
[cut] su tutto il resto.
Facciamo uina bella cosa:
__prima__ ti leggi l'help su:
- oggetto DAO.recordset
- metodi dell'oggetto DAO.recordset
- metodo .findnext
- ...
... _poi_ ne riparliamo...
ciao
ugo

Se ho capito bene vuoi aggiungere un campo ad una tabella via codice.
Io faccio cosi:
strSql = "Alter Table " & tabella & " Add Column " & campo & " INTEGER
DEFAULT 0"
Conn.Execute strSql
In questo modo se il campo non esiste allora lo crea altrimenti non fa nulla
e non ti da errore.
Ovviamente il codice di sopra va bene solo per i campi Interi lunghi, se
invece devi inserire uno di tipo testo allora devi usare "CHAR With
Compression" e non INTEGERE.
Spero che era quello che volevi.
Ciao.
Il Pioniere.

 Conn.Execute strSql
Non proprio:
io ho una tabella con 2 campi("nomilogici"e "nomifisici")
e voglio aggiungere un record solo nel caso in cui questo non esista.
aspetto un tuo aggiornamento
grazie dell'aiuto

 wrote in message
ag627m$j9k7q$1...@ID-52090.news.dfncis.de...


 aspetto un tuo aggiornamento
intanto che aspetti, leggi l'help...
ciao
ugo

 :-/
    Consigli? Io non do' mai consigli, semmai indicazioni.
    Ma dimmi... non apprezzi un numero cosi' elevato di informazioni in
cosi' poche parole? Ma dimmi... tu domandi, liberamente, nella forma che
preferisci, ma pretendi che ti si risponda secondo criteri tuoi? Ovvero tu
puoi criticare la forma della mia risposta? E perche' poi? Non ti ho forse
dedicato del tempo? Son forse andato fuor di tema? Non ti ho forse risposto?
Hai la testa cosi' piccina da non capir quel che ho scritto? E non hai
nemmeno intenzione di migliorarti? Non potevi allora far finta di niente e
tirar dritto? Dici anche "come al solito"... Vuol dire che hai gia' avuto la
(s)ventura di incappar in qualche mia risposta fuori ordinanza? Io per me
non mi interesso di chi chiede. Rispondo ai quesiti, non ai nick. E non uso
ne' nick ne' filtri ne' plonco. Mi sento libero, come mi piacerebbe ti
sentissi anche tu.


 ugo
vedi post successivo

 wrote in message
ag6gbj$iv1mg$1...@ID-52090.news.dfncis.de...
