Hej och välkommen hit!
Om vi ska kunna hjälpa dig måste du visa koden du använder.
Dessutom borde vi egentligen tvinga dig att lova att inte läsa fler av idg-lektionerna om asp och databaser - det är skräp. :)
21 svar · 1 054 visningar · startad av Torax
Hej alla hjälpsamma!
Jag har precis lärt mig flera av IDG.se's lektioner kring ASP och databaser. Men jag har fått ett oläsbart hinder. Allt har funkat och jag har förstått varför vad hände tills nu. När jag ska ansluta till en Office Access Databas så får jag felmeddelandet
"Feltyp:
Microsoft VBScript runtime (0x800A000D)
Type mismatch: 'Connect'
/databas/add.asp, line 5"
vad är felet och hur åtgärdar jag det? Vad innebär "Type mismatch: 'Connect"?
Hej och välkommen hit!
Om vi ska kunna hjälpa dig måste du visa koden du använder.
Dessutom borde vi egentligen tvinga dig att lova att inte läsa fler av idg-lektionerna om asp och databaser - det är skräp. :)
Haha
Jag har faktist planer på att gå vidare med php framöver, men man förlorar ingeting på att kunna mycket :)
Koden följer:
Set Connect = Server.Createobject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="_
("c:/inetpub/wwwroot/adresser.mdb")
Prova:
Set Connect = Server.Createobject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:/inetpub/wwwroot/adresser.mdb"
men man förlorar ingeting på att kunna mycket
Nä - men om man vill kunna saker så ska man akta sig för idg-lektionerna som har med asp och databaser att göra.
: ( dåligt resultat, ett nytt felmeddelande:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Drivrutin för ODBC Microsoft Access]Allmänt fel Det går inte att öppna registernyckeln 'Temporary (volatile) Jet DSN for process 0xbb8 Thread 0xfc DBC 0x21013ec Jet'.
/databas/add.asp, line 5
Det felet brukar betyda att sökvägen till databasen är fel. Dubbelkolla att den verkligen ligger i c:/inetpub/wwwroot/ och heter adresser.mdb. Kolla också att tillräckliga rättigheter är satta på mappen databasen ligger i (dvs IUSR_datornamn skall kunna läsa och skriva och skapa filer i wwwroot.).
Normalt sett brukar man (av säkerhetsskäl) inte lägga databaser direkt i webbens rotmapp - så jag skulle rekommendera att du flyttar databasen någon annanstans.
"(dvs IUSR_datornamn skall kunna läsa och skriva och skapa filer i wwwroot.)" vad innebär IUSR_datornamn?
och en till sak, jag tar bort skrivskydd på wwwroot men det återkommer direkt, den går liksom inte att få bort : /
I Windows används det anonyma internetgästkontot som heter IUSR_datornamn för att köra webben på IIS. Detta windows-konto måste alltså ha rättigheter att göra det som webben ska göra.
och en till sak, jag tar bort skrivskydd på wwwroot men det återkommer direkt, den går liksom inte att få bort : /
Det behöver inte vara så - det kanske bara ser ut så.
Okey, då utesluter vi det där med skrivskyddat.
Hur fungerar IUSR_datornamn då? Hur ska jag gå tillväga för att slå av de ifall det är de som är felet?
Förövrig: tackar för snabba svar :)
Om det nu är rättigheterna som är problemet, så brukar jag svara så här:
@nders skrev:
Om du använder Windows XP, måste du se till att avaktivera Förenklad fildelning. Det gör du genom att i windows-utforskaren gå till menyn Verktyg -> Mappalternativ och sedan till fliken Visning. I listan finns alternativet ”Använd förenklad fildelning”. Se till att rutan inte är förbockad. Klicka OK.
I utforskaren, högerklicka på mappen där databasen ligger, välj Egenskaper, och sedan fliken Säkerhet. Om inte användarkontot IUSR_datornamn finns med i listan, klicka på knappen Lägg till och fyll i det i rutan.
Markera användarkontot IUSR_datornamn i listan och se till så följande rättigheter är markerade: Ändra, Läsa och köra, Läsa, och Skriva.
Jag lyckades göra allt du sa, och den var förbockad som du sa, men resultatet är fortfarande dessamma. Jag hade ett stort antal användare på datorn, men jag testade även att ge alla fullständiga rättigheter - men även det misslyckades.
vad innebär Type mismatch: 'Connect'? Connect är ju min variabel, men är det något fel på den?
Får man Type mismatch-felmeddelanden för andra fel än access till datorbasen?
vad innebär Type mismatch: 'Connect'? Connect är ju min variabel, men är det något fel på den?
Tja... Det betyder att det är något fel som är trasigt. Ofta kan det vara att man försöker tilldela något ett strängvärde, när det är ett tal som förväntas. Det finns 238904 olika anledningar - och orsaken kan man oftast inte reda ut utan att syna koden i sömmarna.
Får man Type mismatch-felmeddelanden för andra fel än access till datorbasen?
Helt klart. Det är ett av de vanligaste felmeddelandena.
Jag lyckades göra allt du sa, och den var förbockad som du sa, men resultatet är fortfarande dessamma.
Du menar att läget just nu är att du har dubbelkollat att databasen ligger på rätt ställe, rättigheterna för iusr_datornamn är uppsatta enligt ovan, samt du får volatile-felmeddelandet? Då får du nog googla lite på fler orsaker för det felmeddelandet. Själv jobbar jag inte med access - så jag vet inte fler felorsaker i huvudet.
Jag testar hela tiden, och jag är helt nybörjare vad gäller databaser. Volatileproblem fick jag ett när jag testade ditt förslag på databaslänk. Men inte när jag anropade med min, är min helt fel - eller funkar båda?
Torax skrev:
Men inte när jag anropade med min, är min helt fel - eller funkar båda?
Med din kod fick du ju ett annat fel, som inträder före det andra. Alltså fungerar varken din eller "min". Jag har ju egentligen inte gjort någon ändring på din kod, förutom att laga den så den är syntaxmässigt riktig.
Jag sökte runt lite, och det verkar som jag kanske behöver verision 4.0 av Jet pack, vilket många påstår att man inte har från början.
Den enda länk jag fann till att ladda ner denna var från Microsoft.com - men när jag ska installera den filen står det att jag har fel språk inställt : /
kaos
Välj rätt språk, och hämta.
Har testat våde svenska och engelska, inget funkar : /
Det råkar inte vara så att du har accessdatabasen öppen när du kör din websida?
Vilket Operativsystem kör du?