webForumDet fria alternativet

Lägga till ifrån datumarray?

ASPur ASP

9 svar · 196 visningar · startad av Jesper T

Medlem sedan nov. 20017 144 inlägg
Frågan#1

Denna kod har jag för att lägga till händelser i en databas.
Nu så skulle jag vilja lägga flera datum i en array som jag inplementerar med denna kod.
myArray=array("2001-10-11","2002-11-01","2002-12-07","2002-12-12")
Alltså samma uppgifter förutom datumet(som skall vara arrayen) skall läggas in.
Hur gör jag det?

Set rs = Server.CreateObject("ADODB.Recordset") 
rs.Open "SELECT * FROM Notes WHERE N_datum = #"& [b]myArray[/b] &"# And N_kat="& katNo &" and N_Namn_id="& Id &"", con, 1,3 

If rs.EOF Then 
       rs.AddNew 
rs("N_Namn_id") = Id
rs("N_datum") = cDate(datDate)
rs("Notes") = strNotes
rs("N_kat")= cint(katNo)
End If 
rs("Notes") = strNotes
rs("N_kat")= cint(katNo)
rs.Update
Medlem sedan sep. 2002366 inlägg
#2
search_arr = "(N_datum = #" & myArray(0) & "#"
For i = 1 To Ubound(myArray,1)
    search_arr = search_arr & " OR N_datum = #" & myArray(i) & "#"
Next
search_arr = search_arr & ")"

search_arr i den här koden kanske skulle kunna byta ut N_datum = #"& myArray &"# i din kod?
(har ej testat koden)

Som jag alltid säger.. Finns säkert nåt fördefinierat för det där.. Men det kan jag inte isåfall ;)

-Eitraz

Medlem sedan nov. 20017 144 inlägg
#3

Det går ju att få ut datumen på så sätt men hur sätts den ihop med min kåd?

Medlem sedan sep. 2002366 inlägg
#4

I'm lost.. hmm? Hur den sätts i hop med kod? (grymmt vad blåst man kan vara ibland..)

-Eitraz

Medlem sedan nov. 20017 144 inlägg
#5

Jo, var kommer detta in här:

Set rs = Server.CreateObject("ADODB.Recordset") 
rs.Open "SELECT * FROM Notes WHERE N_datum = #"& myArray &"# And N_kat="& katNo &" and N_Namn_id="& Id &"", con, 1,3 
[red]search_arr = "(N_datum = #" & myArray(0) & "#"
For i = 1 To Ubound(myArray,1)
    search_arr = search_arr & " OR N_datum = #" & myArray(i) & "#"
Next
search_arr = search_arr & ")"[/red]
If rs.EOF Then 
       rs.AddNew 
rs("N_Namn_id") = Id
rs("N_datum") = cDate(datDate)
rs("Notes") = strNotes
rs("N_kat")= cint(katNo)
End If 
rs("Notes") = strNotes
rs("N_kat")= cint(katNo)
rs.Update
Medlem sedan sep. 2002366 inlägg
#6

oj.. så där gör det nog inte så mycket nytta :D

Jag trodde du skulle göra en sats för vilka datum som ska plockas ut från databasen. ;)

kanske är dags o gå o lägga sig :r

-Eitraz

Medlem sedan nov. 20017 144 inlägg
#7

Nja, det jag visa var bara ett exempel på vad jag menade. Jag kanske lägger sql:en i en loop istället.
typ:

For i = 0 To UBound(myarray)
sql = "insert * into Notes where N_datum=" & myarray(i)
osv...
con.Execute sql,,128
next

Borde det inte gå?

Medlem sedan sep. 2002366 inlägg
#8

Ska du ha nån koll som kollar efter om ett aktuellt datum redan är inlagt?

-Eitraz

Medlem sedan sep. 2002366 inlägg
#9

Har jag förstått dig rätt nu?

For i = LBound(myArray,1) To UBound(myArray,1)
	SQL = "SELECT N_datum FROM Notes WHERE N_datum=#"& myArray(i) & "#"
	Set RS = con.Execute(SQL)
	If RS.EOF Then
		SQL = "INSERT INTO Notes (N_Namn_id,N_datum,Notes,N_kat,) VALUES (" & id & ",'" & myArray(i) & "','" & strNotes & "'," & cint(katNo) &")"
		con.Execute(SQL),,128
	Else
		SQL = "UPDATE Notes SET Notes='" & strNotes & "', N_kat=" & cint(katNo)
		con.Execute(SQL),,128
	End If
	Set RS = Nothing
Next

(har inte testat eller nåt nu)

-Eitraz

Medlem sedan nov. 20017 144 inlägg
#10

Det ser ut att kunna vara något, jag återkommer.
Tack så länge!

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