Google
 

it » comp » lang » visual-basic

DUPLICARE UNA TABELLA IN UN DATABASE

di "giuseppe leserri"
il Tue, 8 May 2007 08:31:57 +0200
newsgroups it.comp.lang.visual-basic
message-id <rPU%h.36430$281.26563@tornado.fastwebnet.it>

Buona giornata a chi mi legge !!
sono come al solito a richiedere qualche suggerimento.
problema :
database DB
con varie tabelle , vorrei duplicarne una cambiandole nome,
ho cercato di risolvere il problema cosi :

Private Sub CreateAmbi()
    EnterRecordset ("ARC-AMBI")  ***** tabella da copiare **********
    Dim i As Integer
    For i = 0 To RS.Fields.Count - 1
    If i = 0 Then
    DB.Execute "CREATE TABLE AMBI0107 (" & RS.Fields(i).Name & " TEXT (" & 
RS.Fields(i).Size & "))"
    Else:
    If RS.Fields(i).Type = 20 Then DB.Execute "ALTER TABLE AMBI0107 ADD 
COLUMN " & RS.Fields(i).Name & " SINGLE "
    If RS.Fields(i).Type = 3 Then DB.Execute "ALTER TABLE AMBI0107 ADD 
COLUMN " & RS.Fields(i).Name & " INT "
    If RS.Fields(i).Type <> 20 And RS.Fields(i).Type <> 3 Then DB.Execute 
"ALTER TABLE AMBI0107 ADD COLUMN " & RS.Fields(i).Name & " TEXT (" & 
RS.Fields(i).Size & ")"
    End If
    Next i
    Set RS = DB.OpenRecordset("ARC-AMBI", dbOpenDynaset) ***** tabella da 
copiare *****
    Set R2 = DB.OpenRecordset("AMBI0107", dbOpenDynaset)   ***** tabella 
copiata *******
    Do While Not RS.EOF
    R2.AddNew
    For i = 0 To RS.Fields.Count - 1
    R2.Fields(i) = RS.Fields(i)
    Next i
    R2.Update
    RS.Delete
    RS.MoveNext
    Loop
    End Sub

il problema che il tipo dato non corrisponde nelle due tabelle , cioè non 
riesco a fare in modo che un certo campo della tabella si di tipo numerico 
decimale , in quanto usando DECIMAL non viene riconosciuto come tipo dato,

in poche parole sapete quali sono i tipi di dati oltre INTEGER LONG SINGLE 
TEXT che si possono utilizzare ( mi interesserebbero decimale e intero  If 
RS.Fields(i).Type = 20 e RS.Fields(i).Type = 3


spero di essere stato chiaro, grazie a tutti e buona giornata !! 


Risposte

Tutti i messaggi della discussione