21. februar 2007 - 20:05
Der er
14 kommentarer
SQL problemer.
Hej jeg kan ikke opdatere db Jeg har en web side som hedder. <html> <head> <title>Tekst til db</title> </head> <body> <% 'Databaseforbindelse Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("/Mappe/Test.mdb") Conn.Open DSN %> <form action="Sidenavn.asp" method="post"> <input type="text" name="Fornavn" size="20" value="Fornavn"> <p> <input type="text" name="Efternavn" size="20" value="Efternavn"> <p> <input type="text" name="Telefon" size="20" value="Telefon"> <p> <input type="text" name="Foedselsdato" size="20" value="Fødselsdato"> <input type="submit" value="Gem"> </p> </form> <% Conn.Close Set Conn= Nothing %> </body> </html> Den sender det over til en anden side som skal opdatere databasen som se sådan ud. <html> <head> <title>Registrering</title> </head> <body> <% 'Databaseforbindelse Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("/Mappe/Test.mdb") Conn.Open DSN strSQL = "Insert into personer (Fornavn) values('" & Request.Form("Fornavn") & "')" strSQL = "Insert into personer (Efternavn) values('" & Request.Form("Efternavn") & "')" strSQL = "Insert into personer (Telefon) values('" & Request.Form("Telefon") & "')" strSQL = "Insert into personer (Foedselsdato) values('" & Request.Form("Foedselsdato") & "')" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing %> <h1>Database er opdateret!</h1> </body> </html> Men jeg får en fejl 500 I Html.dk Asp.Lektion 20 Viser de denne som jeg har fået til at virke. <% ' SQL sætning opbygges strSQL = "Insert into personer (" strSQL = strSQL & "Fornavn, " strSQL = strSQL & "Efternavn, " strSQL = strSQL & "Telefon, " strSQL = strSQL & "Foedselsdato) " strSQL = strSQL & "values( " strSQL = strSQL & "'Fætter', " strSQL = strSQL & "'Guf', " strSQL = strSQL & "'99887766', " strSQL = strSQL & "'20-04-1964')" ' SQL sætning eksekveres Conn.Execute(strSQL) ' Luk databaseforbindelse Conn.Close Set Conn = Nothing %> <h1>Databasen er opdateret!</h1> </body> </html>
Annonceindlæg fra GlobalConnect
21. februar 2007 - 20:12
#1
strSQL = "Insert into personer (Fornavn,Efternavn,Telefon,Foedselsdato) values('" & Request.Form("Fornavn") & "', '" & Request.Form("Efternavn") & "','" & Request.Form("Telefon") & "','" & Request.Form("Telefon") & "'," & Request.Form("Foedselsdato") & "')"
21. februar 2007 - 20:13
#2
istedet for strSQL = "Insert into personer (Fornavn) values('" & Request.Form("Fornavn") & "')" strSQL = "Insert into personer (Efternavn) values('" & Request.Form("Efternavn") & "')" strSQL = "Insert into personer (Telefon) values('" & Request.Form("Telefon") & "')" strSQL = "Insert into personer (Foedselsdato) values('" & Request.Form("Foedselsdato") & "')" og kræver at alle dine kolonner i db'en er af datatypen tekst.
21. februar 2007 - 20:17
#3
det skal nok laves sådan her hvis du vil følge eksemplet på html.dk strSQL = "Insert into personer (" strSQL = strSQL & "Fornavn, " strSQL = strSQL & "Efternavn, " strSQL = strSQL & "Telefon, " strSQL = strSQL & "Foedselsdato) " strSQL = strSQL & "values( " strSQL = strSQL & "'" & Request.Form("Fornavn") & "', " strSQL = strSQL & "'" & Request.Form("Efternavn") & "', " strSQL = strSQL & "'" & Request.Form("Telefon") & "', " strSQL = strSQL & "'" & Request.Form("Foedselsdato") & "')"
21. februar 2007 - 21:39
#4
Får en fejl i Conn.Execute(strSQL)
21. februar 2007 - 21:45
#5
Så vil fejlmeddelelsen måske kunne hjælpe os?
21. februar 2007 - 21:50
#6
prøv dette. strSQL = "Insert into personer (" strSQL = strSQL & "Fornavn, " strSQL = strSQL & "Efternavn, " strSQL = strSQL & "Telefon, " strSQL = strSQL & "Foedselsdato) " strSQL = strSQL & "values( " strSQL = strSQL & "'" & Request.QueryString("Fornavn") & "', " strSQL = strSQL & "'" & Request.QueryString("Efternavn") & "', " strSQL = strSQL & "'" & Request.QueryString("Telefon") & "', " strSQL = strSQL & "'" & Request.QueryString("Foedselsdato") & "')"
21. februar 2007 - 21:51
#7
men jeg kunne også godt tænke mig at få en fejlbesked:)
21. februar 2007 - 21:56
#8
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. /wocdb/Registrering.asp, line 28
21. februar 2007 - 22:32
#9
hvilke datatyper har dine kolonner i din db? prøv strSQL = "Insert into personer (" strSQL = strSQL & "Fornavn, " strSQL = strSQL & "Efternavn, " strSQL = strSQL & "Telefon, " strSQL = strSQL & "Foedselsdato) " strSQL = strSQL & "values( " strSQL = strSQL & "'" & Request.QueryString("Fornavn") & "', " strSQL = strSQL & "'" & Request.QueryString("Efternavn") & "', " strSQL = strSQL & "" & Request.QueryString("Telefon") & ", " strSQL = strSQL & "" & Request.QueryString("Foedselsdato") & ")"
21. februar 2007 - 22:40
#10
Fornavn "Tekst" Efternavn "Tekst" Tlf "Tal" Fødselsdato "Dato og Klokkeslæt" og det er nok denne som er problemet, Men hvad skal man så gøre skal man sætte den som Tekst
21. februar 2007 - 22:48
#11
strSQL = strSQL & "values( " strSQL = strSQL & "'" & Request.QueryString("Fornavn") & "', " strSQL = strSQL & "'" & Request.QueryString("Efternavn") & "', " strSQL = strSQL & "" & Request.QueryString("Telefon") & ", " strSQL = strSQL & "'#" & CDate(Request.QueryString("Foedselsdato")) & "#')"
21. februar 2007 - 22:49
#12
og ellers strSQL = strSQL & "values( " strSQL = strSQL & "'" & Request.QueryString("Fornavn") & "', " strSQL = strSQL & "'" & Request.QueryString("Efternavn") & "', " strSQL = strSQL & "" & Request.QueryString("Telefon") & ", " strSQL = strSQL & "'" & CDate(Request.QueryString("Foedselsdato")) & "')"
21. februar 2007 - 23:04
#13
Fejl 500 ved begge
21. februar 2007 - 23:04
#14
det er en server fejl og ikke et kode problem
Kurser inden for grundlæggende programmering