Avatar billede jlk Nybegynder
03. september 2000 - 14:00 Der er 12 kommentarer

Hvorfor denne fejl??

Når jeg prøver at slette med denne:

ID = Request.Querystring(\"ID\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open Session(\"DB\")
sql = \"DELETE DISTINCTROW Kategori FROM Kategori WHERE ID = \"& ID &\"\"
set rs = MyConn.Execute(sql)
    rs.Close
        myConn.Close
        Set rs = Nothing
        Set myConn = Nothing

Får jeg denne fejlmelding:

Handlingen er ikke tilladt, mens objektet er lukket.

Hvorfor nu det??
Avatar billede tpiil Nybegynder
03. september 2000 - 14:02 #1
lytter med :o)
Avatar billede drean Nybegynder
03. september 2000 - 14:05 #2
du kan ikke sætte RS = nothing når du har lukket det med rs.close
Avatar billede drean Nybegynder
03. september 2000 - 14:05 #3
ID = Request.Querystring(\"ID\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open Session(\"DB\")
sql = \"DELETE DISTINCTROW Kategori FROM Kategori WHERE ID = \"& ID &\"\"
set rs = MyConn.Execute(sql)
Set rs = Nothing
Set myConn = Nothing
rs.close
myConn.close

vil give mere mening
Avatar billede styrmand Nybegynder
03. september 2000 - 14:08 #4
Jeg tror det er fordi du forsøger at fylde data fra en sletning ind i en tabel. Brug i stedet et commandobjekt.

Placer nedensående i din kode efter sql=... og fjern følgende:
set rs...

dim ObjCommand
    set objCommand=server.CreateObject(\"ADODB.Command\")
    objCommand.CommandText=SQL
    objCommand.ActiveConnection = myConn
    objCommand.CommandType=adCmdText
  objCommand.execute
Avatar billede jlk Nybegynder
03. september 2000 - 14:09 #5
drean>>Så mangler den et object rs - så det ændrede ikke så meget.
Avatar billede jlk Nybegynder
03. september 2000 - 14:16 #6
styrmand>>Gider du ikke lige lave hele connectionen og sgl\'en - kan ikke få det til at virke?
Avatar billede styrmand Nybegynder
03. september 2000 - 14:29 #7
Jo, jeg prøver lige i den her editor...
ID = Request.Querystring(\"ID\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")

set objCommand=server.CreateObject(\"ADODB.Command\")
   
myConn.Open Session(\"DB\")
sql = \"DELETE DISTINCTROW Kategori FROM Kategori WHERE ID = \"& ID &\"\"
objCommand.CommandText=SQL
    objCommand.ActiveConnection = myConn
    objCommand.CommandType=adCmdText
  objCommand.execute
Set myConn = Nothing

Avatar billede styrmand Nybegynder
03. september 2000 - 14:31 #8
I princippet mangler der:
set objCommand=nothing
mellem objCommand.execute og Set myConn=nothing. Men det er ikke strengt nødvendigt.
Avatar billede meyer Nybegynder
03. september 2000 - 14:43 #9
Prøv den her:

ID = Request.Querystring(\"ID\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open Session(\"DB\")
sql = \"DELETE DISTINCTROW Kategori FROM Kategori WHERE ID = \"& ID &\"\"
MyConn.Execute(sql)
myConn.Close
Set myConn = Nothing

Så kører den :-)

Meyer

Avatar billede styrmand Nybegynder
03. september 2000 - 21:34 #10
I øvrigt, så springer brugen af DistinctRow Kategori, i øjnene. Er der nogen speciel grund til, at du medtager den? Jeg vil tro, at den kan give problemer i sig selv.
Den kan evt. fjernes.
Avatar billede dondon Nybegynder
05. september 2000 - 23:29 #11
Du skal ikke sætte rs.Close når du bruger en \"DELETE\" sætning - den lukkes automatisk.
Avatar billede drean Nybegynder
30. januar 2001 - 01:36 #12
så lukker vi :) eller ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester