Row Level Locking from Excel VBA query
- From: belkingold <jeffrey.bergstedt@xxxxxxx>
- Date: Fri, 29 Jun 2007 11:48:02 -0700
I'm trying to run a query from Excel VBA with SQL using Jet 4.0 to an
access database. There are multiple users accessing the database at
the same time, and I am trying to set up row level locking in the
query that I am using so that two users will not get the same order
that is waiting in queue. Here's the applicable code I'm using:
Dim dbsConn As ADODB.Connection
Set dbsConn = New ADODB.Connection
Dim myDBname As String
myDBname = "T:\SOC\LNP1\Call center errors\LNP Data Track Back End
Tables\LNP Data Track_be.mdb"
BCNPCNDate = Date - 7
LNPUserID = Range("AK1").Value
Dim connString As String
connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
myDBname & "; Jet OLEDB:Database Locking Mode = 1;User Id=" &
LNPUserID & "; Persist Security Info=false; Jet OLEDB:System
database=T:\SOC\LNP1\Call center errors\LNP Data Track Back End Tables
\LNP Data Track_be.mdw"
dbsConn.Open connString
Dim rs As Recordset
Dim strSELECT As String, strSELECT1 As String, strSELECT2 As
String
Dim rSELECT As String
Set rs = New ADODB.Recordset
rs.LockType = adLockPessimistic
rs.CursorType = adOpenDynamic
LNPSpecName = Range("AK1").Value
strSELECT5 = "SELECT TOP 1 * from [RES LNP Production
Table] [READCOMMITED, XLOCK, READPAST] WHERE [LNPSpecName] is NULL
ORDER BY [LSRSentDate];"
' New/Unassigned orders
rs.Open strSELECT5, dbsConn, , , adCmdTableDirect
If rs.EOF Then
rs.Close
'do nothing
Else
With rs
.Fields("LNPSpecName").Value = LNPSpecName
.Fields("LNPProcessDate").Value = Date
.Fields("LNPProcessTime").Value = Time
.Update
End With
MsgBox ("New Order")
OrderType = "New Order"
GoTo PullValuesIn
End If
Unfortunately, any time two users query the database for a new order
at about the same time, they receive the same record. Can anyone tell
me what I'm missing? Why isn't READPAST ignoring the locked records?
.
- Prev by Date: Re: Manipulating Field to show data differently that entered
- Next by Date: RE: append and update without confirmation message
- Previous by thread: Re: Select Query question
- Next by thread: Re: Finding duplicates, then selecting files with different values
- Index(es):
Relevant Pages
|