Table Appears Open Even After RecordSet is Closed

  • Thread starter Thread starter Jonathan Scott via AccessMonster.com
  • Start date Start date
J

Jonathan Scott via AccessMonster.com

I am trying to change the column of a table from Text to Date in Access97.
With the same database connection, I do an OpenRecordSet() and use movenext(),
update(), and close() to modify the text into the correct format for
conversion to date. Then my code goes to add a column to the table, using the
same connection. However, when I try to append my new field to the table I
get a "some other user is using the table" message. (It's in Japanese so
please forgive me for not knowing the English version message)

I take out the initial text update, and it actually can add the column. So
why is Recordset.Close() not properly releasing the table? Do I need to wait
for some unspecified amount of time for it to properly release the table? Why
does my program trip itself up like this? Is there a better way to do this?

TIA,
Jonathan Scott
 
Jonathan Scott via AccessMonster.com said:
I am trying to change the column of a table from Text to Date in
Access97. With the same database connection, I do an OpenRecordSet()
and use movenext(), update(), and close() to modify the text into the
correct format for conversion to date. Then my code goes to add a
column to the table, using the same connection. However, when I try
to append my new field to the table I get a "some other user is using
the table" message. (It's in Japanese so please forgive me for not
knowing the English version message)

I take out the initial text update, and it actually can add the
column. So why is Recordset.Close() not properly releasing the table?
Do I need to wait for some unspecified amount of time for it to
properly release the table? Why does my program trip itself up like
this? Is there a better way to do this?

TIA,
Jonathan Scott

Post your code, and maybe something will become clear. I suppose you
might need to set the recordset object to Nothing, as well as just
closing it. And you might try waiting for the database engine to finish
unloading its cache, using the statement

DBEngine.Idle dbRefreshCache

But this is just speculation.
 
Back
Top