PRB: Cannot Add Rows to a Replica Database With ADO
ID: Q230152
|
The information in this article applies to:
-
ActiveX Data Objects (ADO), versions 2.1, 2.1 SP1, 2.1 SP2
-
Microsoft OLE DB Provider for Jet, version 4.0
-
Microsoft ODBC Driver for Access, version 4.0
SYMPTOMS
When attempting to insert a row into an Access 97 Design Master or Replica database with either the Microsoft Access ODBC Driver or the Microsoft OLE DB Provider for Jet that ships with MDAC 2.1 GA, the following error occurs:
Operation not supported on replicable databases that have not been converted to the current version.
RESOLUTION
The current workaround is to use the Microsoft Jet OLE DB 3.51 Provider.
STATUS
This behavior is by design. MDAC 2.1 and later service packs for MDAC 2.1 use the Microsoft Jet Engine 4.0.
The Microsoft Jet Engine 4.0 allows read/write access only to design master or replica databases in the
Microsoft Access 2000 format. If you open a design master or replica database using version 4.0 and the
database format is Microsoft Access 97 format (or an earlier format) the database will be read-only.
MORE INFORMATION
Steps to Reproduce Behavior
- Start Access 97.
- Open an Access 97 MDB.
- Choose Tools, Replication, and then Create Replica... from the menus.
- Follow the steps to create a Design Master and Replica database.
- Start Visual Basic and
choose a Project type of Standard EXE. Form1 is created by default.
- Add a Project Reference to
Microsoft ActiveX Data Objects 2.1 Library.
- Paste the following code into the default form's Load method:
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
'The following two Connection Strings will fail.
'Make sure the path to the MDB points to the Design Master or Replica
cn.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb)}" & _
";DBQ=<path to Design Master or Replica>"
'cn.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0" & _
";DATA SOURCE=<path to Design Master or Replica>"
'Uncomment this Connection String for a work around
'cn.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.3.51" & _
";DATA SOURCE=<path to Design Master or Replica>"
cn.Open
rs.ActiveConnection = cn
rs.Open "select * from authors", , adOpenDynamic, adLockOptimistic, adCmdText
rs.AddNew
rs.Update
cn.Close
Set cn = Nothing
- Save the Project and then execute by pressing the F5 key.
© Microsoft Corporation 1999, All Rights Reserved.
Contributions by Matthew Hofacker, Microsoft Corporation
Additional query words:
Keywords : kbADO210 kbDatabase kbDriver kbJET kbMDAC kbGrpVBDB kbGrpMDAC
Version : WINDOWS:2.1,2.1 SP1,2.1 SP2,4.0
Platform : WINDOWS
Issue type : kbprb