---
title: "Undantagsfel ?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/12613-undantagsfel"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "nill"
published: "2001-11-10T13:06:00.000Z"
updated: "2001-11-13T14:17:00.000Z"
replies: 9
views: 278
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/12613-undantagsfel"
---

# Undantagsfel ?

## #1 — nill, 2001-11-10T13:06Z

När försöker köra den här koden:

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "driver={Microsoft Access Driver (\*.mdb)};dbq=" & Server.MapPath("\\klass\\db\\online.mdb")
	Set RecSet = Server.CreateObject("ADODB.Recordset")
	
 	Online = "SELECT \* FROM online "
   	RecSet.Open Online, Connect, adOpenStatic, adLockOptimistic

	Do Until RecSet.EOF

		If (RecSet("datum") \<\> Date) Then
			RecSet.Delete
		End If
		
		Diff = datediff("n", RecSet("tid"), Time)

		If (Diff \> 4 ) Then
			RecSet.Delete
		End If

		RecSet.MoveNext
	Loop

	RecSet.Close

Blir felmeddelandet ibland såhär:

Feltyp:
(0x80020009)
Undantag inträffade. 
/klass/online2.mupp, line 17

Men om man uppdaterar sidan igen brukar det däremot fungera = skumt fel

hjälp ? :)

Permalänk: https://www.webforum.nu/p/12613

## #2 — LarsG, 2001-11-10T14:24Z

Jag vet inte varför det blir fel, men din kod gör onödigt mycket. Det går att skriva med mindre kod som dessutom är mer effektiv.

Du borde kunna skriva om det så här

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("\klass\db\online.mdb")

Online = "delete FROM online where datum <> #" date & "# or datediff('n',tid,#" & time & "#) > 4"
connect.execute online,,128
```

(Otestat)

Varför har du två fält för datum och tid? Så vitt jag har förstått så lagrar Access alltid datum och tid om du använder någon date/time datatyp.

Permalänk: https://www.webforum.nu/p/294417

## #3 — Wiberg, 2001-11-10T14:30Z

Du kan ju också passa på att byta DB-koppling till en inte lika uråldrig variant... ;)

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\klass\db\online.mdb")
```

Permalänk: https://www.webforum.nu/p/294418

## #4 — nill, 2001-11-11T02:12Z

ska prova detta:   
jag vill ju inte ha min sida uråldrig.. 

Hur använder jag lösenord med den moderna  Kopplingskoden ?

Permalänk: https://www.webforum.nu/p/294419

## #5 — nill, 2001-11-12T17:44Z

Är denna variant verkligen bättre och hur gör jag om min databas är lösenordsskyddad (inget användarnamn, bara lösenord (i access då)) ?

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\\klass\\db\\online.mdb")

Permalänk: https://www.webforum.nu/p/294420

## #6 — PatrikB, 2001-11-13T07:19Z

Den är mycket bättre!

Med lösenord på databasen:

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\klass\db\online.mdb") & ";Jet OLEDB:Database Password=mittlosen;"
```

cya,
PatrikB

Permalänk: https://www.webforum.nu/p/294421

## #7 — nill, 2001-11-13T14:06Z

just med denna kod blir det fel med den nya databaskopplingen. Annnars fungerar det bra, tack :)

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\\klass\\db\\counter.mdb")
	Set RecSet = Server.CreateObject("ADODB.Recordset")

 	Count = "SELECT \* FROM counter"
   	RecSet.Open Count, Connect, adOpenStatic, adLockOptimistic
	
	Count = RecSet("counter")
	Count = Count + 1

	RecSet("counter") = Count
	RecSet.Update

	RecSet.Close
	Connect.Close 	

Borde inte det fungera ??? (obs, jag vet att koden inte är snygg men den BRUKAR fungera)

Permalänk: https://www.webforum.nu/p/294422

## #8 — nill, 2001-11-13T14:07Z

Står såhär:

Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel i FROM-instruktion.
/klass/default.asp, line 16

Permalänk: https://www.webforum.nu/p/294423

## #9 — LarsG, 2001-11-13T14:10Z

Counter är ett reserverat ord i Access/Jet. Antingen kn du byta namn eller så får du skriva

```
select * from [COUNTER]
```

Permalänk: https://www.webforum.nu/p/294424

## #10 — nill, 2001-11-13T14:17Z

tackar, det hjälpte :)

Permalänk: https://www.webforum.nu/p/294425

---

Tråden på webben: https://www.webforum.nu/amne/asp/12613-undantagsfel
