我正在使用 VB6 应用程序。哪个正在使用 MSAccess 数据库。现在我正在更改对 sql server 的数据库访问。从 MSAccess 获取/更新数据,应用程序正在使用 DAO 对象。所以现在我也在尝试用 DAO 方法连接 SQL Server。现在我能够连接数据库并能够获取数据。但是当我试图编辑记录时,它给出了错误“运行时错误'3027'无法更新。数据库或对象是只读的”。我在这里显示我的代码:
Public LSWs As Workspace, LSDb As Database
Dim lsConnString As String
Dim l0 As Recordset, SQL0 As String
Dim lehReturn As Integer, retrycount As Integer
lsConnString = "ODBC;DRIVER=SQL Server;SERVER=SERVERName;DATABASE=" & DBname & ";APP=Visual Basic;UID=UID;PWD=PWD"
Set LSWs = DBEngine.Workspaces(0)
Set LSDb = LSWs.OpenDatabase(DBname, dbDriverNoPrompt, True, lsConnString)
retrycount = 0
SQL0 = "select * from schedule_hdr where status = '" & Trim(PCName) & "'"
Set l0 = LSDb.OpenRecordset(SQL0, dbOpenDynaset, dbSeeChanges, adLockPessimistic)
Do While Not (l0.EOF)
LSWs.BeginTrans
l0.Edit
l0!status = "R"
l0.Update
LSWs.CommitTrans
l0.MoveNext
Loop
l0.Close
但它在 l0 处给出错误。编辑此行代码给出错误“运行时错误'3027'无法更新。数据库或对象是只读的任何帮助!或建议请回复
提前致谢!