Just nu i M3-nätverket
Gå till innehåll
webbaccess.net

Insert Into Statement

Rekommendera Poster

webbaccess.net

Hej!

Håller på att försöka sätta in lite data i en databas.... men får felet

 

Microsoft JET Database Engine error '80040e14'

 

Syntax error in INSERT INTO statement.

 

/news.asp, line 24

 

Insert into tar jag för givet att det är denna raden som är fel.

 

strSQL = "Insert into news SET rubrik = '" & Request.Form("rubrik") & "', av = '" & Request.Form("av") & "', nyhet = '" & Request.Form("nyhet") & "' 

 

Men jag vet inte vad som är fel i den raden

 

Edit:

Har tittat på http://w3schools.com/sql/sql_insert.asp men har inte hittat något användbart där

[inlägget ändrat 2007-10-02 21:20:31 av webbaccess.net]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Erki

Du blandar ihop syntaxen för INSERT INTO och UPDATE

 

För Update är det UPDATE tabellen SET field1='xxx'

 

För INSERT INTO är det

 

INSERT INTO tabellen (field1,field2...) VALUES('xxxx', 'yyyy')

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane
men har inte hittat något användbart där

INSERT INTO table_name (column1, column2,...)

VALUES (value1, value2,....)

 

Men du har redan fått lösningen :)

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
webbaccess.net

Jo jag har testat det med, den hoppar vidare så att den ser klar ut, men inget hamnar i databasen. tabellen är rätt, kolumnerna är rätt... men fortfarande inget

 

Den raden ser ut såhär

strSQL = "Insert into news (rubrik, av, nyhet) VALUES ('" & Fixbug(Request.Form("rubrik")) &"','" & Fixbug(Request.Form("av")) &"','" & Fixbug(Request.Form("nyhet")) &"')"

[inlägget ändrat 2007-10-02 21:36:28 av webbaccess.net]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane

Kör du Insert-frågan?

 

Vad gör Fixbug()? Är det myggmedel :)

Skojar bara, försök att namnge dina funktioner så att dem berätta vad dem egentligen gör.

 

[inlägget ändrat 2007-10-02 21:40:27 av Micke_skane]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
webbaccess.net

förstår inte riktigt vad du menar så här kommer hela koden istället

 

[log]<!-- #include file="design.asp" --><!-- #include file="includes/login.asp" -->

 

<form action="?write=news" method="post">

Rubrik

<input type="text" name="rubrik" size="30">

<input type="hidden" name="av" value="<%=session("username")%>"><br>

Inlägg ( <a href="koder.asp">koder</a> )<br>

<textarea name="nyhet" cols="45" rows="6"></textarea><p></p>

<input type="submit" name="Submit" value="Skriv"> <input type="reset" value="Rensa">

</form>

 

<!-- #include file="design_ner.asp" -->

<%

 

' Skapar den i databasen

strSQL = "Insert into news (rubrik, av, nyhet) VALUES ('" & Request.Form("rubrik") &"','" & Request.Form("av") &"','" & Request.Form("nyhet") &"')"

'strSQL = "Insert into news SET rubrik = '" & Request.Form("rubrik") & "', av = '" & Request.Form("av") & "', nyhet = '" & Request.Form("nyhet") & "' "

ObjConn.Execute(strSQL)

 

' Inget spam på två minuter.

Response.Cookies("news") = now

Response.Cookies("news").Expires = DateAdd("s", 120, now())

 

ObjConn.Close

Set ObjConn = Nothing

%>[/log]

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane

Börja med att ta bort detta:

'strSQL = "Insert into news SET rubrik = '" & Request.Form("rubrik") & "', av = '" & Request.Form("av") & "', nyhet = '" & Request.Form("nyhet") & "' "

 

Prova sen att se om INSERT-frågan har några värden med sig.

Skriv så här innan ObjConn.Execute(strSQL) samt sätt framför körningen:

Response.Write(strSQL)

Response.End

'ObjConn.Execute(strSQL)

 

Vad skriv ut?

 

[inlägget ändrat 2007-10-02 21:52:38 av Micke_skane]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
webbaccess.net

Den skriver ut

Insert into news (rubrik, av, nyhet) VALUES ('test','Webbax','testar')

 

Edit:

Öppnade databasen nu så jag kunde se, och där är massor av rader...

så det måste vara fel i koden som öppnar databasen

[inlägget ändrat 2007-10-02 21:56:54 av webbaccess.net]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane
fel i koden som öppnar databasen
Skulle precis föreslå att du provar att skriva ut och vad som händer då :)

Visa koden för SELECT-frågan.

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
webbaccess.net

Koden ser väldigt rörig ut

[log]

<%

strSQL = "SELECT Top 5 * FROM news"

Set ObjRS = ObjConn.Execute(strSQL)

 

If ObjRS.EOF then

Response.Write "Inga Nyheter här!."

else

%>

<h2><% =ObjRS("Rubrik")%></h2>

<b>Skrivit av <% =ObjRS("av")%> <!--den <% =ObjRS("DATE")%>--></b><br>

 

<% Response.Write Replace(ObjRS("nyhet"), Chr(13) & Chr(10), "<br />")

'ObjRS("nyhet")

%>

<% end if %>[/log]

 

Nu har jag det....

 

[log]<%

 

' Öppnar användarens dagbok.

strSQL = "SELECT * FROM news"

Set ObjRS = ObjConn.Execute(strSQL)

 

If ObjRS.EOF then

Response.Write "Inga Nyheter här!."

else

%>

<% Do While not ObjRS.EOF %>

<h2><% =ObjRS("Rubrik")%></h2>

<b>Skrivit av <% =ObjRS("av")%> <!--den <% =ObjRS("DATE")%>--></b><br>

 

<% Response.Write Replace(ObjRS("nyhet"), Chr(13) & Chr(10), "<br />")

'ObjRS("nyhet")

%>

<% ObjRS.MoveNext

Loop

%>

<% end if %>

<%

 

ObjConn.Close

Set ObjConn = Nothing

 

%>[/log]

 

Där är en kod som är rätt...

[inlägget ändrat 2007-10-02 22:05:32 av webbaccess.net]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane

Du har ingen start av loopen efter Else.

Vänta lite.

 

Jaha, du fixade det själv, annars hade jag tänkt gör det åt dig :)

Fungerar det nu?

 

Aja, "snyggade" till det lite åt dig(vill du inte sortera nyheterna):

[log]

<%
' Öppnar användarens dagbok.
strSQL = "SELECT Rubrik,av,nyhet FROM news"
Set ObjRS = ObjConn.Execute(strSQL)

If ObjRS.EOF Then
Response.Write "Inga Nyheter här!."
Else
Do While Not ObjRS.EOF 
%>

<h2><%=ObjRS("Rubrik")%></h2>
<b>Skrivit av <%=ObjRS("av")%> <!--den <% =ObjRS("DATE")%>--></b><br>

<%
Response.Write Replace(ObjRS("nyhet"),Chr(13)&Chr(10),"<br />")
'ObjRS("nyhet")
ObjRS.MoveNext
Loop
End If

ObjConn.Close
Set ObjConn = Nothing
%>

[/log]

[inlägget ändrat 2007-10-02 22:16:16 av Micke_skane]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
webbaccess.net

Ja det funkar perfekt nu...

 

Tack för hjälpen

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Micke_skane

Va bra, då kan man gå och lägga sig nu :)

Tack själv för poängen :thumbsup:

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...