---
title: "Operation is not allowed when the object is open."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/138897-operation-is-not-allowed-when-the-object-is-open"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "DanneSt"
published: "2005-12-06T16:56:51.000Z"
updated: "2005-12-06T18:46:48.000Z"
replies: 20
views: 498
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/asp/138897-operation-is-not-allowed-when-the-object-is-open"
---

# Operation is not allowed when the object is open.

_Sida 1 av 2._

## #1 — DanneSt, 2005-12-06T16:56Z

**Operation is not allowed when the object is open.**
Varför får jag detta felmeddelande?

I koden har jag försökt köra två recset.open:

```
SQL = "SELECT * FROM tabell1 WHERE id =" & Request.QueryString("id")
RecSet.Open SQL, Conn

SQL2 = "SELECT * FROM tabell2"
RecSet.Open SQL2, Conn
```

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

## #2 — @nders, 2005-12-06T16:57Z

Du öppnar samma recordset två gånger? Andra gången är det ju redan öppet???

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

## #3 — DanneSt, 2005-12-06T17:03Z

Jamen, det ÄR ju inte samma recordset! SQL & SQL2 heter de ju...?
Eller har jag fått något om bakfoten?   :-s

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

## #4 — @nders, 2005-12-06T17:06Z

Du cyklar om bakfoten ja. Recordsetet heter ju likadant (*RecSet*). Att dina två variabler med SQL-frågor i heter olika spelar i detta fall ingen roll.

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

## #5 — DanneSt, 2005-12-06T17:08Z

Ouch!!  Hehe, ok...

Vad tror du om denna då?

SQL = "SELECT \* FROM tabell1 WHERE id =" & Request.QueryString("id")
SQL2 = "SELECT \* FROM tabell2"
RecSet.Open SQL,SQL2, Conn

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

## #6 — LarsG, 2005-12-06T17:19Z

Om den tror jag inte

```
SQL = "SELECT * FROM tabell1 WHERE id =" & Request.QueryString("id")
set recSet1 = conn.execute(SQL)

SQL = "SELECT * FROM tabell2"
set Recset2 = conn.execute(sql)
```

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

## #7 — UlfT, 2005-12-06T17:25Z

Det är väl bara att stänga RecSet innan man öppnar det för nästa fråga. :)

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

## #8 — DanneSt, 2005-12-06T17:25Z

Ok, tack för tipset LarsG! 
Jag har gjort en liknande manöver:

Set Recset2= Server.CreateObject("ADODB.Recordset")
...
SQL = "SELECT \* FROM bilder"
RecSet2.Open SQL, Conn

Men får nu istället detta fel:
\[Microsoft\]\[ODBC Microsoft Access Driver\] Syntax error (missing operator) in query expression 'lgh=Bergsgatan 19'. 

Vad fattas nu?

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

## #9 — @nders, 2005-12-06T17:27Z

Du skall ha apostrofer runt strängvärden (dvs runt *Bergsgatan 19*) i SQL.

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

## #10 — DanneSt, 2005-12-06T17:28Z

Så här ser koden ut egentligen:

SQL = "SELECT \* FROM bilder WHERE lgh=" & lghnamnet 
RecSet2.Open SQL, Conn

"lgh" är kolumnnamnet i tabellen "bilder".
"lghnamnet" är en variabel som jag fyllt med en adress från en annan tabell (i detta fall Bergsgatan 19).
Tanken är att dessa ska vara identiska.

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

## #11 — @nders, 2005-12-06T17:29Z

Ok. Lägg då till apostrofer runt strängvärdet så bör den SQL-frågan fungera.

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

## #12 — DanneSt, 2005-12-06T17:30Z

Så här?

SQL = "SELECT \* FROM bilder WHERE lgh=" & 'lghnamnet' 
RecSet2.Open SQL, Conn

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

## #13 — DanneSt, 2005-12-06T17:33Z

Nä. Provade även med:
SQL = "SELECT \* FROM bilder WHERE lgh=" & "lghnamnet" 
RecSet2.Open SQL, Conn

men fick felet: 
\[Microsoft\]\[ODBC Microsoft Access Driver\] Too few parameters. Expected 1.

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

## #14 — LarsG, 2005-12-06T17:35Z

```
SQL = "SELECT * FROM bilder WHERE lgh='" & lghnamnet & "'"
```

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

## #15 — DanneSt, 2005-12-06T17:36Z

Felmeddelande:
Item cannot be found in the collection corresponding to the requested name or ordinal.

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

## #16 — LarsG, 2005-12-06T17:38Z

Det beror på att du anger fel namn när du skall hämta värden från ditt recordset.

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

## #17 — DanneSt, 2005-12-06T18:23Z

Kan du utveckla det där lite mer?
Jag vet att jag har värden i de via:

lgh_bild = Recset2("bild")
lgh_lgh = Recset2("lgh")
Response.Write(lghnamnet)
Response.Write(lgh_bild)
Response.Write(lgh_lgh)

lghnamnet och lgh_lgh är identiska, precis som det var meningen.
Men vad är det då som felar?

Kodraden som blir fel är:

\<a href="javascript:Bilden('pics/\<%=RecSet2(bild)%\>','\<%=RecSet2("lgh")%\>');"\>\<img src="pics/\<%=RecSet2("bild")%\>" width="90" border="1"\>\</a\>

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

## #18 — @nders, 2005-12-06T18:30Z

Du saknar citationstecken runt *bild* i den första utskriften i länken.

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

## #19 — DanneSt, 2005-12-06T18:40Z

YES!!

Nu funkar det!
Tusen tack @nders och LarsG!

Hoppas Ni tjänar miljoner på detta - för det är Ni iaf värda!!  :-)

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

## #20 — @nders, 2005-12-06T18:44Z

Vad bra att du fick ihop det! :bire

Lycka till med resten. :)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/138897-operation-is-not-allowed-when-the-object-is-open  
Nästa sida: https://www.webforum.nu/amne/asp/138897-operation-is-not-allowed-when-the-object-is-open/page2.md
