Непрерывная форма MS ACCESS 2013-2016 показывает ошибку при добавлении любой записи после 3-й при подключении через ADO к SQL SERVER. Это можно исправить? - PullRequest
1 голос
/ 27 марта 2020

MS ACCESS 2013-2016 непрерывные формы показывают ошибку при добавлении любой записи после 3-го.

Я подключился через ADO к SQL SERVER.

Я работал над этим выдача за сутки. Я надеюсь, что есть что-то, что я могу изменить в моей строке подключения, использовать другую библиотеку или все, что я могу сделать в VBA, чтобы избежать создания нескольких обходных путей в проекте, который существует и вырос за 20 лет.

Есть это известная проблема? Можно ли это исправить?

Ссылка на непрерывную форму, показывающую ошибку

Это код формы, который я использую:

Option Compare Database

Private Sub Form_Open(Cancel As Integer)
Dim vConnString As String, vSQL As String
Dim v_ADO_RS As New ADODB.Recordset
Dim v_ADO_Conn As New ADODB.Connection

vConnString = "Provider=SQLOLEDB;Data Source=Rockware19\SQL_2012;" & _
              "Initial Catalog=System;" & _
              "User ID=***;Password=****;"
vSQL = "SELECT * FROM setcolor"

v_ADO_Conn.Open vConnString

With v_ADO_RS
    Set .ActiveConnection = v_ADO_Conn
    .CursorLocation = adUseClient
    .Source = vSQL
    .LockType = adLockOptimistic
    .CursorType = adOpenKeyset
    .Open
End With

Set Me.Recordset = v_ADO_RS
End Sub

Это пример одной из таблиц SIMPLE SQL SERVER, к которой я подключаюсь:

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[setColor](
    [ColorName] [varchar](50) NOT NULL,
    [MSAccess] [int] NULL,
    [Hex] [varchar](100) NULL,
 CONSTRAINT [PK_setColor] PRIMARY KEY CLUSTERED 
(
    [ColorName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO

...