Database Error (urgent)

Hi

I've got a major problem with my company Intranet in that when several people are trying to access similar pages that use the same database I get errors saying 'cannot read database - file already in use'.  It works fine if there isn't heavy traffic.  I'm using an Access database.

Should this happen?  i thought Coldfusion would be able to handle several requests at the same time.  I may be being completely niaive here - I am a newbie.

Is there anything I that I could be doing that is fundamentally wrong?  Is there anything I can do in the Coldfusion Administrator to stop this happening?

Any help gratefully recieved.

Thanks in advance.
nelliottAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jonnygo55Commented:
in Cold Fusion administrator go to the ODBC Data Sources...click on the relevant one...click on CF Settings to expand the options....click on limit connections...set box to three(I think thats the max for access)...not many..think about upgrading to SQL server if your company has the money or MySQL if not
0
jonnygo55Commented:
0
kjuliffCommented:
Also check that no one is using the database NOT from your intranet. Is any application other than CF using it?

Also go to Datasources in the administrator and then CF Settings and make sure this is NOT checked

 Maintain database connections - Check this
box to maintain connections to data sources across client requests.
0
Protecting & Securing Your Critical Data

Considering 93 percent of companies file for bankruptcy within 12 months of a disaster that blocked access to their data for 10 days or more, planning for the worst is just smart business. Learn how Acronis Backup integrates security at every stage

kjuliffCommented:
PS - THEN reboot the machine that the database resides on.
0
jyokumCommented:
someone probably has the database open in Access and has one of the tables open in design mode. If you can't hunt them down, do as kjuliff suggested... reboot the server the database resides on.
0
anandkpCommented:
In ur CFAdmin -> Data Sources ... go to ur DSN & click on advanced settings ...
u'll see Maintain DataBase Connections - UNCHECK this !

that shld do it.

PS : kjuliff - u mentioned "Maintain database connections - Check this " - whereas it shld be unchecked - right ????

K'Rgds
Anand
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
substandCommented:
place <cftransaction> tag around your queries.
0
nelliottAuthor Commented:
Still having problems.  I realise Access is not really set up for multi user requests, but I thought Coldfusion could cope with more than 2 people using it at the same time!  Am I right in thinking that Coldfusion should stack queries and deal with them one by one?

Within Coldfusion Administrator I have the following settings:

Data Sources

CF Data Source Name: intranet
Database File: E:\Inetpub\wwwroot\assets\db\intranet.mdb (Should this be in the System Database field? - what's the difference?)

Maintain Connectiosn is NOT checked.


Server Settings

Maximum number of simultaneous requests: 5

(Nothing else checked)


Caching Settings

'Save Class Files' and 'Cache Web Server Paths' are the only things ticked.


Each query within my cfm pages is set up as so:

<cfquery name="main_news" datasource="intranet" cachedwithin="#CreateTimeSpan(0,2,0,0)#">
SELECT ID, SUBMITTED, CATEGORY, NAME, CONTENT
FROM MAIN
WHERE CATEGORY = 'Headline News'
ORDER BY ID DESC</cfquery>


Any help gratefully recieved!!!  Thanks in advance...
0
anandkpCommented:
yes change ur DSN from USer DSN to system DSN & let me know
0
nelliottAuthor Commented:
I get this error message when I tey and add the database to System DSN

Connection verification failed for data source: intranet
[]java.sql.SQLException: [Macromedia][SequeLink JDBC Driver][SequeLink Server]Unable to retrieve error message from backend ODBC Driver.
The root cause was that: java.sql.SQLException: [Macromedia][SequeLink JDBC Driver][SequeLink Server]Unable to retrieve error message from backend ODBC Driver.

Any ideas?
0
anandkpCommented:
what version of CF are u using ?
0
nelliottAuthor Commented:
6.1
0
anandkpCommented:
Enterprise / Professional ?
0
nelliottAuthor Commented:
Standard Edition Version 6.1
0
kjuliffCommented:
OK. Is the dababase on the same machine as CF? If not go to services and change the login for the CF  service to the network administrator account.
0
nelliottAuthor Commented:
The database is on the same machine as CF.
0
kjuliffCommented:
OK. Then you shouldn't have to worry about the CF login account. The problem MAY be that it wasn't initially set up as a system
DSN.

I would do this - delete ALL dsn entries (in CF AND ODBC) for this database.

Reboot.

Set up as system DNS and limit simultaneos connections to 3.
0
nelliottAuthor Commented:
I have run out of ideas, so I've changed the database to MySQL.  Looks to have solved the above problem, although it is bringing in it's own little problems (aaargghhh!)

Thanks for your all your help.

Points split between kjuliff, anandkp and jonnygo55
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Servers

From novice to tech pro — start learning today.