webForumDet fria alternativet

OLE DB fel

ASPur ASP

8 svar · 481 visningar · startad av eddy1

Medlem sedan aug. 2001969 inlägg
Frågan#1

Hoppas någon kan tyda detta felmeddelande för jag fatttar inget??

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x58c Thread 0x35c DBC 0xa8f5d9c Jet'.

/af_login.asp, line 69

Här är koden: första raden är nr 69!

Con.open "driver={Microsoft Access Driver (*.mdb)};dbq=D:/kunder/start/xxx-xxxxxx.se/databases/base.mdb"
					
					SQL = "Select * from tbl_af"
					 
					Set query = Con.Execute(SQL)
Medlem sedan aug. 2001969 inlägg
#2

Skumt

nu går det, starta bara om webläsaren, kan det ha något att göra med att ett gammalt fel var cachat ???

Men vad är felet i följande rad ??

Con.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & 
<!-- #include file=”../mapp1/filnamn.asp” --> & " "
Medlem sedan jan. 20032 285 inlägg
#3

Allt. ;)
Nej, men det går helt enkelt inte att göra sådär, ASP och SSI är två helt skilda saker.
Ett alternativ som borde fungera lika bra:

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objTS = objFSO.OpenTextFile(Server.MapPath("../mapp1/filnamn.asp"))
strFilnamn = objTS.ReadAll
objTS.Close : Set objTS = Nothing
Set objFSO = Nothing

Con.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & strFilnamn
Medlem sedan aug. 2001969 inlägg
#4

a men

hur brukar du göra då? ska jag lägga hela connection strängen i en include fil.. Tycker det är bra så man slipper ändra sökvägen till databsen i alla dokumenten om man nu skulle behöva det..

Medlem sedan jan. 20032 285 inlägg
#5

Du kan ju göra en funktion som du lägger i include-filen som du inkluderar i böjan av filen istället, t.ex:

db.asp:

Function OpenDB()
  Set objConn = Server.CreateObject("ADODB.Connection")
  objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb")

  Set OpenDB = objConn
  objConn.Close : Set objConn = Nothing
End Function

default.asp:

<!-- #include file="db.asp" -->
<%
Set objConn = OpenDB()
'...
Set objConn = Nothing
%>
Medlem sedan aug. 2001969 inlägg
#6

hänger inte med ??

varför gör du en instans av objektet hela tiden? eller vad det nu kallas??
typ först
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb")

sen

Set OpenDB = objConn

och i default.asp

Set objConn = OpenDB()

varför använder man inte bara objConn hela tiden... Jag fattar inte riktigt

jag försökte ha hela connectionsträngen i en include fil men då får jag följande meddelande!!

ADODB.Connection error '800a0e78'

Operation is not allowed when the object is closed.

/af_login.asp, line 73

How come???

tack för dit tålamod!!

Medlem sedan jan. 20032 285 inlägg
#7

Hur ser koden på/runt rad 73 ut då? :)

Medlem sedan aug. 2001969 inlägg
#8

aaaa nu var jag ju helt snurrig, det är ju en funktion man anropar....
nu är jag med

Medlem sedan aug. 2001969 inlägg
#9
Set Con = Server.CreateObject("ADODB.Connection")
						
<!-- #include file="base.asp” -->
						
SQL = "Select * from tbl_af"    
					 
Set query = Con.Execute(SQL)        rad 73
137 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)