I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Rs.Eof ??? hvad hedder mit recordset, kan du hjælpe. her er min kode:
sub doFormatering 'Response.Write Request.Form("fil") dim fil,f
fil = Request.Form("fil") fil = Split(fil,vbCrLf)
' Initialisering af databaseconnection Set oConn = Server.CreateObject("ADODB.Connection") Set oRS = Server.CreateObject("ADODB.Recordset") c = Application("db")
oConn.ConnectionString = c oConn.Open
dim medlemsnr, firma, adresse, adresse2, by, kontakt, SQL
for each f in fil t = split(f,""",""")
if ubound (t) > -1 then
medlemsnr = mid(t(0), 2) firma = re(t(1)) adresse = re(t(2)) adresse2 = re(t(3)) by = re(t(4)) kontakt = re(t(5))
Set oConn = Server.CreateObject("ADODB.Connection") oConn.Open Application("db")
istedet for
' Initialisering af databaseconnection Set oConn = Server.CreateObject("ADODB.Connection") Set oRS = Server.CreateObject("ADODB.Recordset") c = Application("db")
oConn.ConnectionString = c oConn.Open
Recordsettet angiver du jo først når du har lavet en sql-sætning at smide op imod databasen.
Du løber da ikke records igennem med for each f in fil, hvis fil er din form. Så løber du jo bare felterne igennem i formen? I ovenstående er fil jo heller ikke din form, men et felt formen og du løbe alle linier i feltet igennem.
If (rs_medlemmer.Fields.Item("medlemsnr").Value) contains medlemsnr Then ' denne linie skal den løbe alle records igennem. update() else insert() end if
Er der ikke en som vil vise mig hvordan? Jeg hæver points.
Du løber alle felter i din form igennem og for hvert felt der findes splitter du det op i 6 variabler. Herefter vil du tjekke om den første variabel (medlemsnummeret) findes i databasen i forvejen, opdatere hvis den gør og indsætte hvis den ikke gør. Har jeg forstået det rigtigt?
Så er det i hvert fald noget hen af:
for each f in fil t = split(f,""",""")
if ubound (t) > -1 then
medlemsnr = mid(t(0), 2) firma = re(t(1)) adresse = re(t(2)) adresse2 = re(t(3)) by = re(t(4)) kontakt = re(t(5))
'## Check om medlemsnummeret findes i databasen findes i forvejen' SQL = "SELECT ID FROM Medlemmer WHERE medlemsnr= '" & medlemsnr & "'" Set rs = ConnO.Execute(sql)
'## Hvis det ikke gør, indsættes det' If Rs.Eof Then SQL = "INSERT INTO Medlemmer (medlemsnr,Firma,Adresse,Adresse2,vBy,Kontakt) " & _ '" VALUES (" & medlemsnr & ",'" & firma & "','" & adresse & "','" & adresse2 & "','" & _ 'by & "','" & kontakt & "')" '## Hvis det gør, opdateres det' Else SQL = UPDATE " osv osv End If
rs.Close Set rs = Nothing
'Response.Write SQL oConn.Execute(SQL)
medlemsnr = "" firma = "" adresse = "" adresse2 = "" by = "" kontakt = "" end if
jeg har rettet til: SQL_findes = "SELECT medlemsnr FROM Medlemmer WHERE medlemsnr= '" & medlemsnr & "'" Set rs = Conn.Execute(SQL_findes) MEN STADIGT SAMME FEJL.
Skal oConn.Execute(SQL) egentligt ikke executes inde i if-then-else for hvor gang den er is eller else?
Jeg har følgende fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression '', Kontakt = '9900 Frederikshavn"' WHERE medlemsnr = 31'.
/admin/upload.asp, line 79
jeg byttede lidt rundt på værdierne i den kommeseparede fil og dernæst denne fejl. Jeg kan ikke få det på plads.
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression ''9900 Frederikshavn", Kontakt = 'Sille' WHERE medlemsnr = 31'.
UPDATE Medlemmer SET medlemsnr = 30001, Firma = 'MANSE', Adresse = 'F Julvej 2', Adresse2 = '', vBy = '9900 Frederikshavn", Kontakt = 'Sille' WHERE medlemsnr = 30001UPDATE Medlemmer SET medlemsnr = 30009, osv.
ldanielsen jeg vil meget gerne beholde medlemsnr da noget jo skal oprettes og noget opdateres fra det samme upload af en kommasep.
Den skriver stadigt: "' efter Frederikshavn
???
UPDATE Medlemmer SET medlemsnr = 30001, Firma = 'MANSE', Adresse = 'F Julvej 2', Adresse2 = '', vBy = '9900 Frederikshavn"', Kontakt = 'Sille' WHERE medlemsnr = 30001UPDATE Medlemmer SET medlemsnr = 30009, osv.
SQLén ser sådan ud: SQL = "UPDATE Medlemmer SET Firma = '" & firma & "', Adresse = '" & adresse & "', Adresse2 = '" & adresse2 & "', vBy = '" & by & "', Kontakt = '" & kontakt & "' WHERE medlemsnr = " & medlemsnr
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.