VB.NET 2003, SQL Befehl Insert

HansJ

Mitglied
Hallo,
in meiner Anwendung auf einem MDE habe ich die Access Datei ADOCETest.cdb

Diese Datei hat eine Tabelle "TestTabelle" die hat 2 Spalten
1. Id = Autowert als Primärer Index.
2. Name = Text
Mit dem Befehl
Code:
rs = cn.Execute(" INSERT INTO TestTable " + " (Name) " + "VALUES ('" + fn + "')")

(cn = Connection rs = Recordset fn = String zB. "Test" )

füge ich Zeilen ein und lese die Daten wieder aus und lasse sie Anzeigen, das funktioniert.

Wenn ich jetzt die CDB Datei zum Host mit ActiveSync4.1 übertrage bekomme ich folgende Fehlermeldung.

[ODBC Microsoft Access Driver] Sie wollten den Null-Wert einer Variablen zuweisen, die nicht den Datentyp Variant hat.
Daten wurden in Feld 0 auf dem Gerät eingefügt, konnten dennoch der Hostdatenbank nicht hinzugefügt werden.

Ich vermute ich habe ein Problem mit dem Feld Id.

Hans
 

JensG

Erfahrenes Mitglied
Hallo Hans,

du könnest das Feld id ja selbst ermitteln und dann im Insert Befehl mit übergeben.
Wie sieht denn das Ergebnis deines Inserts in der DB aus ? Ist id dann = 0 ?
Ist id wirklich ein Autowert ?

Ich habe zu VB 6 Zeiten auch viel mit Access und ADO gemacht aber muss zugeben
das ich nicht weiß was eine cdb Datei ist.

Warum arbeitest du eigentlich unter VB.NET noch mit ADO und steigst nicht auf ADO.NET um ? Ganz so schwer ist es nicht obwohl man völlig umdenken muss.

Jens