PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MsSql, Insert Into Fehler



-Sensemann-
13-01-2004, 12:43
Hallo,

wenn ich diesesn Befehl ausführen will, sagt er mir dauernd das der Syntax nicht stimmt.

Vielleicht deswegen, das Alter = Zahl ist und strquery = String?

brauche ich dann eine weiteren mssql connect?




strQuery = "INSERT INTO Orchester " & _
"(Name, Vorname, Alter) VALUES " & _
"('" & Request("Name") & "', '" & _
Request("Vorname") & "', " & _
Request("Alter") & ")"


Microsoft JET Database Engine- Fehler '80040e14'

Syntaxfehler in der INSERT INTO-Anweisung.

mwanaheri
13-01-2004, 13:38
Original geschrieben von -Sensemann-



strQuery = "INSERT INTO Orchester " & _
"(Name, Vorname, Alter) VALUES " & _
"('" & Request("Name") & "', '" & _
Request("Vorname") & "', " & _
Request("Alter") & ")"



Ich kenne mich mit mssql überhaupt nicht aus, abe in Zeile 3 scheint mir der
Gebrauch von ' eigenartig. das erste steht innerhalb der Klammer, das zweite erst nach den zweiten Anführungszeichen (hinter &"). Da scheint mir ein Fehler vorzuliegen.

peterschen
13-01-2004, 19:57
Hallo,

also ich kann auf die schnelle auch keinen Fehler entdecken.
Da aber ein Error beim verarbeiten der Anweisung aufgetreten ist,
denke ich, dass es nicht am Connect liegt.

PS:
So kann man das gleich viel besser lesen

SQLquery = "INSERT INTO Orchester "
SQlquery = SQLquery & "(Name, Vorname, Alter) VALUES "
SQlquery = SQLquery & "('" & Request("Name") & "', "
SQlquery = SQLquery & "'" & Request("Vorname") & "', "
SQlquery = SQLquery & Request("Alter") & ")"

Grüße
Christoph

-Sensemann-
13-01-2004, 20:22
<%
Option Explicit

Dim objConn
Dim objCmd
Dim strQuery
Dim strConn
Dim blnMayInsert

blnMayInsert = False
strConn = "PROVIDER=Microsoft.Jet.OleDb.4.0;Data Source=" & _
Server.MapPath("../datenbank/auslesen.mdb")


If Request("Name") <> "" Then
blnMayInsert = (Request("Name") <> "" _
And Request("Vorname") <> "" _
And Request("Alter") <> "")
End If

If blnMayInsert Then
Set objConn = CreateObject("ADODB.Connection")
objConn.ConnectionString = strConn
objConn.Open

' -----------------------------------------------
' Query erstellen
' -----------------------------------------------

SQLquery = "INSERT INTO Orchester "
SQlquery = SQLquery & "(Name, Vorname, Alter) VALUES "
SQlquery = SQLquery & "('" & Request("Name") & "', "
SQlquery = SQLquery & "'" & Request("Vorname") & "', "
SQlquery = SQLquery & Request("Alter") & ")"

Set objCmd = CreateObject("ADODB.Command")
objCmd.ActiveConnection = objConn
objCmd.CommandText = strQuery
objCmd.Execute

objConn.Close
Set objConn = Nothing
Set objCmd = Nothing

Response.Redirect(Request.ServerVariables("schleife3.asp") & _
"?saved=true")
Response.End
End If
%><html>
<head>
<title>Datensatz einfügen</title>
<style>
td, body, p, h3 {
font-family:Arial;
font-size: 11px;
}

h3 {
color:green;
}
</style>
</head>
<body>
<p>
<b>Datensatz einfügen</b>
</p>
<p>
Hier können Sie der Bücherliste einen neuen Datensatz
hinzufügen. Bitte füllen Sie alle Felder aus und klicken Sie
anschliessend auf "Speichern".
</p>
<%
If Request("saved") = "true" Then
%>
<h3>Der Datensatz wurde erfolgreich eingefügt</h3>
<%
End If
%>
<form method="POST" action="<% Response.write Request.ServerVariables ( _
"schleife3.asp") %>">
<p>
<b>Namer</b><br>
<input type="text" name="Name" maxlength="50"
value="<%= Request("Name") %>">
</p>
<p>
<b>Vorname</b><br>
<textarea name="Vorname" cols="40"
rows="5"><%= Request("Vorname") %></textarea>
</p>
<p>
<b>Name</b><br>
<input type="text" name="Alter"
value="<%= Request("Alter") %>">
</p>
<input type="Reset" value="Formular zurücksetzen">
<input type="Submit" value="Speichern">
</form>
</body>
</html>

So sieht das gesamte aus.

-Sensemann-
14-01-2004, 09:55
<%
Option Explicit

On Error Goto 0

Dim objConn
Dim objCmd
Dim objRS
Dim strConn
Dim strQuery

strConn = "PROVIDER=Microsoft.Jet.OleDb.4.0;Data Source=" & _
Server.MapPath("../datenbank/auslesen.mdb")
strQuery = "SELECT Name, Vorname, Alter " & _
"FROM Orchester"

Set objConn = CreateObject("ADODB.Connection")
objConn.ConnectionString = strConn
objConn.Open()

Set objCmd = CreateObject("ADODB.Command")
Set objCmd.ActiveConnection = objConn
objCmd.CommandText = strQuery

Set objRS = objCmd.Execute

Dim intCurrent
Dim strBgColor
intCurrent = 1

While Not objRS.EOF And Response.IsClientConnected
strBgColor = "#FFFFF"
if intCurrent Mod 2 = 0 Then
strBgColor = "#7d83c1"
end if
%>
<table table border="0" width="300px" align="center">
<tr bgcolor="<% Response.write strBgColor %>">
<td width="100"> <% Response.write objRS("Name") %> </td>
<td width="100"> <% Response.write objRS("Vorname") %> </td>
<td width="100"> <% Response.write objRS("Alter")%> </td>
</tr>
</table>
<%

intCurrent = intCurrent + 1
objRS.MoveNext
Wend

objRS.Close()
objConn.Close()

Set objRS = Nothing
Set objCmd = Nothing
Set objConn = Nothing
%>

das ist der 2. Teil.

also das script worauf sich das 1. beruft.

-Sensemann-
14-01-2004, 11:29
Die Lösung war folgendes.

http://www.asp-faq.de/index.asp?RID=2&FID=85&SFI=1&ELE=7403&OPID=0&ORID=2&OSST=&OSFI=1

Gaert
14-01-2004, 13:12
Igitt ASP ... :D

-Sensemann-
03-02-2004, 12:57
Dim objConn
Dim objCmd
Dim SQLQuery
Dim strConn
Dim blnMayInsert
Dim Kundennummer



blnMayInsert = False
strConn = "PROVIDER=Microsoft.Jet.OleDb.4.0;Data Source=" & _
Server.MapPath("../update.mdb")


If Request("kommentar") <> "" Then
blnMayInsert = (Request("kommentar") <> "" )'
End If

If blnMayInsert Then
Set objConn = CreateObject("ADODB.Connection")
objConn.ConnectionString = strConn
objConn.Open

SQLQuery = "UPDATE Benutzer SET kommentar = '" & REQUEST("kommentar") & "' WHERE BenutzerNR = " & SESSION("Benutzer_ID")
SQLQuery = SQLQuery & "('Kommentar') VALUES "
SQLQuery = SQLQuery & "(Request('Kommentar')"


Set objCmd = CreateObject("ADODB.Command")
objCmd.ActiveConnection = objConn
objCmd.CommandText = SQLQuery
objCmd.Execute

objConn.Close
Set objConn = Nothing
Set objCmd = Nothing

Response.Redirect(Request.ServerVariables("SCRIPT_NAME") & "?saved=true")
Response.End
End If
%><html>
<head>
<title>Datensatz einfügen</title>
<style>
td, body, p, h3 {
font-family:Arial;
font-size: 11px;
}

h3 {
color:green;
}
</style>
</head>
<body>
<p>
<b>Datensatz einfügen</b>
</p>
<p>
Hier können Sie eine Bemerkung hinzufügen.
</p>
<%
<h3> gut </h3>
If Request("saved") = "true" Then

End If
%>
<form method="POST" action="<%= Request.ServerVariables ("SCRIPT_NAME") %>">
<p>
<b>Hier haben Sie die möglichkeit eine Bemerkung abzugeben.</b><br>
<input type="text" name="kommentar" maxlength="50"
value="<%= Request("kommentar") %>">
</p>
<input type="Reset" value="Formular zurücksetzen">
<input type="Submit" value="Speichern">



# Kompilierungsfehler in Microsoft VBScript (0x800A0400)
Anweisung erwartet
/test/projekt_asp/bemerkung.asp, line 77

peterschen
03-02-2004, 18:21
Hallo,


Original geschrieben von Gaert
Igitt ASP ... :D

*räusper* es hilft wirklich niemandem, erst recht nicht den Leuten, die
hier ein Problem anschreiben, wenn man flamed.

Grüße
Christoph

-Sensemann-
03-02-2004, 18:31
<%

Dim objConn
Dim objCmd
Dim SQLQuery
Dim strConn
Dim blnMayUpdate
Dim Bunutzernr




strConn = "PROVIDER=Microsoft.Jet.OleDb.4.0;Data Source=" & _
Server.MapPath("../update.mdb")


blnMayUpdate = (Request("kommentar") <> "")'

SQLQuery = "UPDATE Kunden SET kommentar = '" & REQUEST("kommentar") & "'
SQLQuery = SQLQuery & "('kommentar') VALUES "
SQLQuery = SQLQuery & "(Request('kommentar')"
WHERE benutzerNR = " & SESSION("benutzer_ID")

Set objCmd = CreateObject("ADODB.Command")
objCmd.ActiveConnection = objConn
objCmd.CommandText = SQLQuery
objCmd.Execute

objConn.Close
Set objConn = Nothing
Set objCmd = Nothing

Response.Redirect(Request.ServerVariables("SCRIPT_NAME") & "?saved=true")
Response.End
End If
%>
<%
<h3> gut </h3>
If Request("saved") = "true" Then

End If
%>
<form method="POST" action="<%= Request.ServerVariables ("SCRIPT_NAME") %>">
<p>
<b>Hier haben Sie die möglichkeit eine Bemerkung abzugeben.</b><br>
<input type="text" name="kommentar" maxlength="50"
value="<%= Request("kommentar") %>">
</p>
<input type="Reset" value="Formular zurücksetzen">
<input type="Submit" value="Speichern">
</form>

-Sensemann-
03-02-2004, 19:17
# Kompilierungsfehler in Microsoft VBScript (0x800A0400)
Anweisung erwartet
/test/projekt_asp/bemerkung.asp, line 44

# Browsertyp:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 Firebird/0.7


# Seite:
GET /test/projekt_asp/bemerkung.asp


# Zeit:
Dienstag, 3. Februar 2004, 19:35:54

so schauts aus.

Zeile 44 = nach dem End IF

...

Set objCmd = Nothing

Response.Redirect(Request.ServerVariables("SCRIPT_NAME") & "?saved=true")
Response.End
End If

...

-Sensemann-
03-02-2004, 20:31
strConn = "PROVIDER=Microsoft.Jet.OleDb.4.0;Data Source=" & _
Server.MapPath("../update.mdb")

If blnMayUpdate = (Request("Kommentar") <> "") and Request ("btnMayUpdate") = "yes" then

SQLQuery = "UPDATE benutzer SET Kommentar = '" & REQUEST("kommentar") & "' WHERE benutzerNR = " & SESSION("benutzer_ID")
SQLQuery = SQLQuery & "('kommentar') VALUES "
SQLQuery = SQLQuery & "(Request('kommentar')"


Set objCmd = CreateObject("ADODB.Command")
objCmd.ActiveConnection = objConn
objCmd.CommandText = SQLQuery
objCmd.Execute
end if

-Sensemann-
10-02-2004, 23:51
http://selfforum.teamone.de/?t=72034&m=414809