Unfrage: DAO oder ADO

Ich erstelle und bearbeite eine ACCESS-Datenbank mit VB6-Programmen.
Früher habe ich mit DAO gearbeitet - jetzt mit ADO!
Mit ADO bin ich nicht sehr glücklich: Langsam, Einschränkungen (Anzahl Felder die mit einem Update bearbeitet werden können ) usw.

Ich bin geneigt meine Programme wieder für DAO umzuschreiben.
Ist dieser Schritt zu empfehlen ?

Zweite Frage:
Bei meiner DB (dbVersion30) meldet ACESSS 2000, dass es sich um eine frühere Version handelt und frägt ob es diese DB konvertieren soll.
Wie erstelle ich per Code eine DB einer aktuellen MS-Version.

Vielen Dank im voraus
Horst

Ich erstelle und bearbeite eine ACCESS-Datenbank mit
VB6-Programmen.
Früher habe ich mit DAO gearbeitet - jetzt mit ADO!
Mit ADO bin ich nicht sehr glücklich: Langsam, Einschränkungen
(Anzahl Felder die mit einem Update bearbeitet werden können )
usw.

Kommte auf’s Tuning an!! Probier mal mehere Varianten mit CursorLocation, LockType, etc.

Ich bin geneigt meine Programme wieder für DAO umzuschreiben.
Ist dieser Schritt zu empfehlen ?

Um Gottes Willen NICHT!!! Du stellst Dich damit nur selbst in die Ecke! Sollte die Access-DB mal rausfallen und durch Oracle o.ä. ersetzt werden, stehst Du blöd da.

Zweite Frage:
Bei meiner DB (dbVersion30) meldet ACESSS 2000, dass es sich
um eine frühere Version handelt und frägt ob es diese DB
konvertieren soll.
Wie erstelle ich per Code eine DB einer aktuellen MS-Version.

Durch die Angabe des Providers im Connectionstring

Vielen Dank im voraus
Horst

Bitte, Stefan.

Erstmal Danke für deine Antwort,

Ich erzeuge derzeit meine Datenbank mit folgenden Befehl:

Set db_Ptr = gws_Workspace.CreateDatabase(pstr_DbFilename, dbLangGeneral, dbVersion30)
Kannst du mir ein Beispiel geben, wie du es gemeint hast, mit diener Antwort "Angabe des Providers im Connectionstring
".

Man kann mir ADO nicht mehr wie 99 geänderte Felder auf einmal updaten. Weisst du zufällig einen Workaround. Ich habe zwar einen Artikel gefunden - leider nicht richt verstanden.
Beispiel wäre super!

Horst

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ich erzeuge derzeit meine Datenbank mit folgenden Befehl:

Set db_Ptr = gws_Workspace.CreateDatabase(pstr_DbFilename,
dbLangGeneral, dbVersion30)
Kannst du mir ein Beispiel geben, wie du es gemeint hast, mit
diener Antwort "Angabe des Providers im Connectionstring
".

Mit dem ADO-Catalog-Object funktioniert das folgender Maßen:

Dim adoCat As ADOX.Catalog

adoCat.Create "Provider=Microsoft.Jet.OLEDB.4.0;" & \_
 "Data Source=.\New.mdb;"

Öffnen der DB dann ganz einfach mit

Dim adoCnn As New ADODB.Connection

adoCnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & \_
 "Data Source=.\New.mdb;"

Man kann mir ADO nicht mehr wie 99 geänderte Felder auf einmal
updaten. Weisst du zufällig einen Workaround. Ich habe zwar
einen Artikel gefunden - leider nicht richt verstanden.
Beispiel wäre super!

Also mir ist das neu!?! Welche Version der ADO-Libraries verwendest Du? Und welche Tabelle hat 99 Felder???

Wenn’s trotzdem nicht funktionieren sollte, dann mußt Du eben jedes einzeln update.

For i = 0 to 100
 adoRst.Field(i).Value = strNewValue
 adoRst.Update
Next i

Horst

/stefan