Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations bkrike on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

[Microsoft][ODBC Microsoft Access Driver] Not enough space on temporar

Status
Not open for further replies.

jshanoo

Programmer
Apr 2, 2002
287
IN
Hi all,
----------------------------------
Set connData = New ADODB.Connection
connData.ConnectionString = Data_Master
connData.Open
connData.BeginTrans
connData.Execute &quot;Delete * from feed_msg where date < date()&quot;
connData.CommitTrans
------------------------------
at conndata.execute following error is occuring,please update, can anyone please help me in this
''''''
-2147024882
[Microsoft][ODBC Microsoft Access Driver] Not enough space on temporary disk.


regards
John Philip

*** Even the Best, did the Bad and Made the Best ***

John Philip
 
This will create a temporary file before committing.
How many records are being deleted and how much free disk space is on C: ?
 
access file is 125MB
and i an deleting 15000 records,
2.5 gb is free space ib C: drive
both TMP and temp folder are intact

*** Even the Best, did the Bad and Made the Best ***

John Philip
 
-Which version of ADO are you using?
-What happens when you add this options:

connData.Execute &quot;Delete * from feed_msg where date < date()&quot;,,adExecuteNoRecords

-What happens when reduce the number of records to be deleted?
-What happens when you use the OLEDB provider instead of the ODBC driver (this is recommended anyways, and may be the cause of the problem)
 
Could the problem be with the field name date?

where [date]< date()

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 
to CClint,

ADO version is 2.7,
it give the same error even the same change made
even syntax changed to [date]

and adding ',, adexecutenorecords;

database is in remote machine so i have to use odbc

regards
john philip

*** Even the Best, did the Bad and Made the Best ***

John Philip
 
And question #3(limiting records)?
Also, w/o transaction?
Using client cursor?
Is the connection still open when the error comes?
Use Oledb
 
Hi
answers to ur query
And question #3(limiting records)?
if more than 10000 records it gives error

Also, w/o transaction?

Using client cursor?
default cursor
Is the connection still open when the error comes?
yes
Use Oledb
i am using DSN

*** Even the Best, did the Bad and Made the Best ***

John Philip
 

Then you may have to limit the amount of records.

This is my last suggestion, as the error may be incorrect:

With the JET engine you can increase the &quot;Max Locks Per File&quot; setting in the registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0

to something like 50,000

I have had file locks error many of times when bulk deleting many records like this, as JET has a default lock of 9500.
I don't know what affect this will have, if any, using the ODBC driver.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top