webForumDet fria alternativet

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

ASP

8 svar · 467 visningar · startad av Thompa__85

Medlem sedan aug. 2002600 inlägg
Frågan#1
"Microsoft OLE DB Provider for ODBC Drivers error '80004005' 

[Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database engine stopped the process because you and another user are attempting to change the same data at the same time. 

/gastbok.asp, line 106 "

Vad menas me de??

Medlem sedan juni 20019 519 inlägg
#2

Har du access öppet samtidigt som du försöker surfa på sidan?

Medlem sedan aug. 2002600 inlägg
#3

voigtann1 skrev:

Har du access öppet samtidigt som du försöker surfa på sidan?

Kanske är någon användare som har de.. kan de va de?

rs("gast") = gast + 1
rs("status") = rs("status") + 90
rs.update

det är de den klagar på...

Medlem sedan apr. 20003 174 inlägg
#4

Beror på att du inte kan uppdatera en databas som redan är öppen för redigering av någon annan/något annat.
Hur öppnar du databasen? (i scriptet)

Medlem sedan aug. 2002600 inlägg
#5

Palle skrev:

Beror på att du inte kan uppdatera en databas som redan är öppen för redigering av någon annan/något annat.
Hur öppnar du databasen? (i scriptet)

så här:

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("databas/databas.mdb")
	Set rs = Server.CreateObject("ADODB.Recordset")
	Addera = "SELECT * FROM gb where gbid='"&request.querystring("id")&"' order by id desc"
	rs.Open Addera, Connect, 3, 3
Medlem sedan apr. 20003 174 inlägg
#6

Några tips:

1. Byt från DRIVER till Jet.OLEDB Provider - snabbare och säkrare.
2. Testa execute-förfarandet istället, så slipper du strulet med låsnycklarna.

Samma kod, annat utförande:

[red]Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="& Server.MapPath("databas/databas.mdb")
		Set rs = Connect.Execute("SELECT * FROM gb where gbid='"& request.querystring("id")&"' order by id desc")[/red]
Medlem sedan nov. 20017 144 inlägg
#7

Godag yxsskaft... :r

Medlem sedan aug. 2002600 inlägg
#8

Palle skrev:

Några tips:

1. Byt från DRIVER till Jet.OLEDB Provider - snabbare och säkrare.
2. Testa execute-förfarandet istället, så slipper du strulet med låsnycklarna.

Samma kod, annat utförande:

[red]Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="& Server.MapPath("databas/databas.mdb")
		Set rs = Connect.Execute("SELECT * FROM gb where gbid='"& request.querystring("id")&"' order by id desc")[/red]

Okej tack :) Löser de mitt problem tro?

Medlem sedan apr. 20003 174 inlägg
#9

Det borde lösa ditt problem, notera också att om du använder execute-förfarandet
så behöver du inte inkludera adovbs-filen, vilket optimerar sidan en aning då den är ganska tung.

295 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
172 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)