webForumDet fria alternativet

INSERT INTO

9 svar · 231 visningar · startad av firstchoice

firstchoiceMedlem sedan okt. 2001615 inlägg
#1

set rs = Server.createobject("ADODB.Recordset")
sql1 = "select max(katid) AS MAXTAL from kategorier"
set rs = dbconn.execute(sql1)
katid = cint(rs("MAXTAL"))
katid = katid + 1
rs.close
set rs = nothing

	set rs = Server.createobject("ADODB.Recordset")	
	sql = "insert into kategorier values (" & katid & ",'" & katnamn &"')"
	set rs = dbconn.execute(sql)

' insert into kategorier values(1, 'hej')

rs.close
set rs = nothing
dbconn.close
set dbconn = nothing

den lägger till datan i databasen, men jag får upp ett felmedelande på förljande "rs.close" raden här i slutet

vad kan vara fel? behöver jag rs när jag skall köra insert?

m_soderlundMedlem sedan sep. 20026 425 inlägg
#2

Du behöver inte använda ett RecordSet om du ska lägga in data i en databas.. Dessutom har du skapat två identiska RecordSets.. Använd denna kod i stället:

Dim dbConn, Rs, Rs2
set Rs = dbconn.execute("select max(katid) AS MAXTAL from kategorier")
katid = cint(rs("MAXTAL"))
katid = katid + 1

set Rs2 = dbconn.execute("insert into kategorier values (" & katid & ",'" & katnamn &"')")

' insert into kategorier values(1, 'hej')

Rs.close : set Rs = nothing
rs2.Close : Set Rs2 = Nothing
dbconn.close : set dbconn = nothing

icaaqMedlem sedan okt. 20005 273 inlägg
#3

firstchoise skrev:

vad kan vara fel? behöver jag rs när jag skall köra insert?

Nej

[red]
sql1 = "select max(katid) AS MAXTAL from kategorier" 
set rs = dbconn.execute(sql1) 
katid = cint(rs("MAXTAL")) 
katid = katid + 1 
set rs = nothing 

sql = "insert into kategorier values (" & katid & ",'" & katnamn &"')" 
dbconn.execute(sql),,128

' insert into kategorier values(1, 'hej') 

set dbconn = nothing [/red]

Så kanske går bättre :)

mvh icaaq

@ndersMedlem sedan juni 200032 969 inlägg
#4

m_soderlund skrev:

Du behöver inte använda ett RecordSet om du ska lägga in data i en databas..

[b]set Rs2 = [/b]dbconn.execute("insert into kategorier values (" & katid & ",'" & katnamn &"')") 

' insert into kategorier values(1, 'hej') 

Rs.close : set Rs = nothing 
[b]rs2.Close : Set Rs2 = Nothing[/b]
dbconn.close : set dbconn = nothing

Varför skapar du recordsets då? :)

Ta bort det fetmarkerade.

(Har redigerat ett par gånger, det var svårt att få det tydligt)

m_soderlundMedlem sedan sep. 20026 425 inlägg
#5

Jag skapar inte Recordsets @nders, utan jag använder Rs och Rs2 som variabler bara.. De är ju inte ett Recordset.

@ndersMedlem sedan juni 200032 969 inlägg
#6

Jo, du skapar ett tomt recordset när du exekverar insert-satsen.

icaaqMedlem sedan okt. 20005 273 inlägg
#7

Håller med @nders kolla min kod istället med ,,128 ;)

firstchoiceMedlem sedan okt. 2001615 inlägg
#8

funkar ej!

så här ser det ut just nu

dim dbconn
set dbconn = server.createobject("ADODB.Connection")
dbconn.open "mobile","mobile","pw"

dim rs, sql, maxtal, id, rs2 
set Rs = dbconn.execute("select max(katid) AS MAXTAL from kategorier") 
katid = cint(rs("MAXTAL")) 
katid = katid + 1 

set Rs2 = dbconn.execute("insert into kategorier values (" & katid & ",'" & katnamn &"')") 

Rs.close : set Rs = nothing 
rs2.Close : Set Rs2 = Nothing 
dbconn.close : set dbconn = nothing

fel i "rs2.Close : Set Rs2 = Nothing "

@ndersMedlem sedan juni 200032 969 inlägg
#9
dim dbconn 
set dbconn = server.createobject("ADODB.Connection") 
dbconn.open "mobile","mobile","pw" 

dim rs, sql, maxtal, id
set Rs = dbconn.execute("select max(katid) AS MAXTAL from kategorier") 
katid = cint(rs("MAXTAL")) 
katid = katid + 1 

dbconn.execute("insert into kategorier values (" & katid & ",'" & katnamn &"')") ,,128

Rs.close : set Rs = nothing 
dbconn.close : set dbconn = nothing

Varför kan du läsa om ovan. :)

icaaqMedlem sedan okt. 20005 273 inlägg
#10

icaaq skrev:

Håller med @nders kolla min kod istället med ,,128 ;)

x(

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)