---
title: "Fel i sats"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/98140-fel-i-sats"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "magnusfernstrom"
published: "2004-02-24T22:36:32.000Z"
updated: "2004-02-29T19:31:04.000Z"
replies: 21
views: 435
page: 1
pages: 2
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/databaser-sql/98140-fel-i-sats"
---

# Fel i sats

_Sida 1 av 2._

## #1 — magnusfernstrom, 2004-02-24T22:36Z

```
<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("users.mdb")
SQL = "select  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, " & _
" max(iif(f2.Datum is null,f1.datum,f2.datum))  " & _
" from forum f1 left outer join forum f2 " & _
" on f1.fid = f2.svar " & _
" where f1.svar = 0 " & _
" group by f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg " & _
" order by 5 desc"

Set rs = db.Execute(SQL)
Do until rs.EOF
%>
```

Med denna kod får jag detta fel:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

\[Microsoft\]\[ODBC Microsoft Access Driver\] Too few parameters. Expected 1.

/slauson/db/1/forum.asp, line 15

MEN, bara ibland. Det är det som är det skumma.
Ibland så syns trådarna som dom sak.

Det var LarsG som hjälpte mig med den här satsen förut, så han kanske vet så där på rak hand vad som är fel. Om det nu inte är jätte enkelt att lista ut, vilket det bergis är.

Mvh Magnus

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

## #2 — magnusfernstrom, 2004-02-25T16:03Z

Jag är förvånad att ingen svarar, kan ingen detta? :(

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

## #3 — @nders, 2004-02-25T16:19Z

Det är underligt med intermittenta fel.
I övrigt: när funkar det, och när funkar det inte?

Jag tycker också att du ska byta connectionstring, som jag skrev i din maratontråd häromdagen.

mvh

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

## #4 — magnusfernstrom, 2004-02-26T16:21Z

Kan det hjÃ¤lpa att buta connection string?
NÃ¤r det funkar och inte funkar? Ja du, nÃ¤r det vill och inte vill helt enkelt. :)

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

## #5 — Engine^, 2004-02-26T16:29Z

Byta Connectionstring

```
db.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("users.mdb")
```

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

## #6 — magnusfernstrom, 2004-02-26T21:40Z

Har  nu bytt connection string och får detta härliga fel meddelande med jämna mellanrum...
Microsoft JET Database Engine error '80040e10'

No value given for one or more required parameters.

/slauson/db/1/forum.asp, line 20

Inget har ändrats förutom felkoden med andra ord.

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

## #7 — Vimp, 2004-02-26T21:47Z

Testa att skriva ut SQL-satsen innan den körs.

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

## #8 — LarsG, 2004-02-26T21:54Z

Det är samma fel. 

I och med att SQL-satsen alltid är den samma så är det inte den som är problemet.

Kanske du har en något korrupt databas?

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

## #9 — magnusfernstrom, 2004-02-27T07:23Z

Vimp: Hur gör jag detta?

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

## #10 — @nders, 2004-02-27T07:28Z

```
Response.write SQL
```

Men i det här fallet spelar det ingen roll, eftersom det inte finns några variabelvärden i frågan.

Jag tror snarare på det LarsG säger, *Kanske du har en något korrupt databas?*. Prova att reparera.

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

## #11 — magnusfernstrom, 2004-02-28T22:48Z

Hur reparerar man?
Men...
Jag hade ett forum med samma SQL-sats förut. Fast annan databas. Men jag fick ändå samma felmeddelande.

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

## #12 — @nders, 2004-02-29T10:08Z

> **magnusfernstrom skrev:**
>
> Hur reparerar man?

Man väljer *reparera* eller liknande i någon av menyerna, gissar jag. :)

> **magnusfernstrom skrev:**
>
> Jag hade ett forum med samma SQL-sats förut. Fast annan databas. Men jag fick ändå samma felmeddelande.

Lika intermittent?

Felmeddelandet i sig innebär "Det är ett tabell- eller fältnamn jag inte känner igen", så det är skumt att det fungerar lite då och då...

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

## #13 — LeonL, 2004-02-29T10:19Z

Att reparera databas

Verktyg -\> Databasverktyg -\> Komprimera och reparera databas... :)

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

## #14 — magnusfernstrom, 2004-02-29T18:40Z

Nu fungerar det, hurra :)

Men ett annat fel som jag inte förstår mig på är att den sroterar rätt med denna SQL-sats:

```
SQL = "select  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, " & _
" max(iif(f2.Datum is null,f1.datum,f2.datum))  " & _
" from forum f1 left outer join forum f2 " & _
" on f1.fid = f2.svar " & _
" where f1.svar = 0 " & _
" group by  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg " & _
" order by 5 desc"
```

Men inte med denna:

```
SQL = "select  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik, " & _
" max(iif(f2.Datum is null,f1.datum,f2.datum))  " & _
" from forum f1 left outer join forum f2 " & _
" on f1.fid = f2.svar " & _
" where f1.svar = 0 " & _
" group by  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik " & _
" order by 5 desc"
```

Med denna kod så sorterar den inte så att den tråd som fått senaste svar hoppar högst upp!
Vad är det nu som är fel då?

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

## #15 — @nders, 2004-02-29T18:48Z

Enligt order by sorterar du på KlisterRubrik, så det är inte så knepigt att det blir galet då. ;)

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

## #16 — magnusfernstrom, 2004-02-29T18:49Z

Ujdå! Men jag fattar ändå inte hur jag ska göra får att få det rätt.
Är det bara att byta plats på nåt eller?

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

## #17 — @nders, 2004-02-29T18:52Z

Det enklaste är nog att ändra i ORDER BY, så att det istället för att sortera på det femte 'fältet' i select-listan, sorterar på det sjätte. Du har ju lagt in ett till fält i select-listan, så ordningsnumren är inte samma.

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

## #18 — magnusfernstrom, 2004-02-29T18:57Z

Okej, då var det avklarat :) 
Tack så mycket för hjälpen @nders!

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

## #19 — magnusfernstrom, 2004-02-29T19:24Z

Nu har det dykt upp ännu ett problem med den här SQL-satsen :) Hurra!

```
SQL = "select  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik, " & _
" max(iif(f2.Datum is null,f1.datum,f2.datum))  " & _
" from forum f1 left outer join forum f2 " & _
" on f1.fid = f2.svar " & _
" where f1.svar = 0 " & _
" group by  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik " & _
" order by 6 desc"
```

Hur skall koden se ut om jag bara vill skriva ut de trådar som har värde 0 i fältet Klistrad?

Som ni kanske märker fattar jag verkligen noll av den här SQL koden, så jag skulle bli mycket tacksam om nån vänlig skäl skulle vilja hjälpa mig :)

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

## #20 — @nders, 2004-02-29T19:29Z

Det är bara att lägga till villkoret i WHERE.

```
SQL = "select  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik, " & _
" max(iif(f2.Datum is null,f1.datum,f2.datum))  " & _
" from forum f1 left outer join forum f2 " & _
" on f1.fid = f2.svar " & _
" where f1.svar = 0 " & _
" and f1.Klistrad = 0" & _
" group by  f1.FID, f1.Namn, f1.Rubrik, f1.Inlagg, f1.KlisterRubrik " & _
" order by 6 desc"
```

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/98140-fel-i-sats  
Nästa sida: https://www.webforum.nu/amne/databaser-sql/98140-fel-i-sats/page2.md
