webForumDet fria alternativet

Exekvera SQL-fråga

ASPur ASP

2 svar · 462 visningar · startad av devotion

Medlem sedan jan. 20013 582 inlägg
Frågan#1

Hej,

Jag har följande lilla kod:

Set TextFile = Fs.Opentextfile(sPath & sFileName, 1, True)
	
	'Loopa igenom textfilen
	while not TextFile.AtEndOfStream
	
		a = split(TextFile.Readline, VbTab)
		
		sArtNo = a(0)
		sArtName = a(1)
		
		sSQL = sSQL & "UPDATE tblArticle SET Modified = GETDATE(), Category = 'Vanlig mtrl' WHERE [Nr] = '" & sArtNo & "'"  & VbCrLf
		i = i + 1
	wend
	
	TextFile.Close
	Set TextFile = Nothing
	Set Fs = Nothing
	
	'Öppna databasen
	Set Conn=CreateObject("ADODB.Connection")
	Conn.Open Application.sDbConnectionString
	Conn.Execute sSQL, ra, 128
	
	Conn.Close
	Set Conn=Nothing

För att undvika att göra en update i loopen, så bygger jag på SQL-frågan och exekverar den när loopen är klar.

Fungerar ju fint, men, är det en bra lösning? Finns det något negativt? Kan man göra på något bättre/säkrare sätt?

Mvh
Henrik

Medlem sedan juni 200032 969 inlägg
#2

Jag hade nog istället byggt upp en lista med artikelnummer och kört en SQL-fråga som skulle se ut typ:

sSQL = "UPDATE tblArticle SET Modified = GETDATE(), Category = 'Vanlig mtrl' WHERE [Nr] IN ('bla1', 'bla2', 'bla3')"

mvh

Medlem sedan jan. 20013 582 inlägg
#3

:-)

Jo, så kan man ju göra! :)

Mvh
Henrik

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