Toon posts:

[ASP] syntax-fout in INSERT INTO SQL statement

Pagina: 1
Acties:
  • 91 views sinds 30-01-2008

Verwijderd

Topicstarter
Hallo,
redelijk nieuw met asp en op dit forum, ik werk vooral via dreamweaver en weet zelf weinig van ruwe code.
ik krijg lokaal en remote de melding
Syntax error in INSERT INTO statement line 115

Whoami wees me al op de forumregels die ik vergat te lezen, hopelijk
heb ik dit keer een duidelijkere en juistere post.

eerst een quote van Whoami:
Het zou dus handiger zijn, mocht je hier de relevante code posten (en dat is dus je sql statement dat je wilt uitvoeren), ipv de regel die je post (Execute method van je command).

ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
' *** Insert Record: construct a sql insert statement and execute it

Dim MM_tableValues
Dim MM_dbValues

If (CStr(Request("MM_insert")) <> "") Then

  ' create the sql insert statement
  MM_tableValues = ""
  MM_dbValues = ""
  For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
    MM_formVal = MM_fields(MM_i+1)
    MM_typeArray = Split(MM_columns(MM_i+1),",")
    MM_delim = MM_typeArray(0)
    If (MM_delim = "none") Then MM_delim = ""
    MM_altVal = MM_typeArray(1)
    If (MM_altVal = "none") Then MM_altVal = ""
    MM_emptyVal = MM_typeArray(2)
    If (MM_emptyVal = "none") Then MM_emptyVal = ""
    If (MM_formVal = "") Then
      MM_formVal = MM_emptyVal
    Else
      If (MM_altVal <> "") Then
        MM_formVal = MM_altVal
      ElseIf (MM_delim = "'") Then  ' escape quotes
        MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
      Else
        MM_formVal = MM_delim + MM_formVal + MM_delim
      End If
    End If
    If (MM_i <> LBound(MM_fields)) Then
      MM_tableValues = MM_tableValues & ","
      MM_dbValues = MM_dbValues & ","
    End If
    MM_tableValues = MM_tableValues & MM_columns(MM_i)
    MM_dbValues = MM_dbValues & MM_formVal
  Next
  MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"

  If (Not MM_abortEdit) Then
    ' execute the insert
    Set MM_editCmd = Server.CreateObject("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_editConnection
    MM_editCmd.CommandText = MM_editQuery
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close

    If (MM_editRedirectUrl <> "") Then
      Response.Redirect(MM_editRedirectUrl)
    End If
  End If

End If
%>


ook weet ik niet wat je hiermee bedoeld:
Wat je kunt doen, is, ipv die INSERT daadwerkelijk uit te voeren, die query eens naar het scherm outputten, en dan kijken hoe die daadwerkelijk er uit ziet. Op die manier kan je de fout snel vinden.

dank,
Pieter

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 11:45

gorgi_19

Kruimeltjes zijn weer op :9

Ipv MM_editCmd.Execute
response.Write MM_editQuery gebruiken

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Wat je kunt doen, is, ipv die INSERT daadwerkelijk uit te voeren, die query eens naar het scherm outputten, en dan kijken hoe die daadwerkelijk er uit ziet. Op die manier kan je de fout snel vinden.
Daarmee bedoelen ze dat je de daadwerkelijke query, dus INSERT INTO tbltest (column_1) values ('thevalue'), weergeeft op het scherm. Dan kun je zien hoe jouw code de sql genereert.

En nou ken ik geen asp visual basic of iets dergelijks maar in jouw geval is het ongeveer:

response.write(sqlqueryinvariable)

Jemig...ik hoop dat mijn post ook maar een beetje toegevoegde waarde heeft... :)

cd /usr/ports/www/porn make install


Verwijderd

Topicstarter
gorgi_19 schreef op dinsdag 07 juni 2005 @ 13:59:
Ipv MM_editCmd.Execute
response.Write MM_editQuery gebruiken
ik krijg de foutmelding niet meer en ga terug naar mijn index, maar ik de gegevens die ik toevoegde worden niet gepost.
TeasingU schreef op dinsdag 07 juni 2005 @ 14:01:
[...]


Daarmee bedoelen ze dat je de daadwerkelijke query, dus INSERT INTO tbltest (column_1) values ('thevalue'), weergeeft op het scherm. Dan kun je zien hoe jouw code de sql genereert.

En nou ken ik geen asp visual basic of iets dergelijks maar in jouw geval is het ongeveer:

response.write(sqlqueryinvariable)

Jemig...ik hoop dat mijn post ook maar een beetje toegevoegde waarde heeft... :)
hoe moet ik dat dan weergeven op het scherm ?

[ Voor 3% gewijzigd door Verwijderd op 07-06-2005 14:05 ]


  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 08-04 12:54

Jaspertje

Max & Milo.. lief

Met een Response.write "HierdeSQLdiejeuitvoert"\
dat is dus de MM_editQuery en direct daaronder een response.end

[ Voor 45% gewijzigd door Jaspertje op 07-06-2005 14:10 ]


Verwijderd

Topicstarter
dan krijg ik

insert into news (title,subtitle,content,date) values ('trg','rtgrt','grtg','trg')

maar toch wordt niets gepost

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Sorry, maar ik ga dit topic ook weer op slot doen. Regel eerst eens dat je de query te zien krijgt die echt uitgevoerd werd, door hem naar het scherm af te drukken. Zie ook P&W FAQ - Leer **** debuggen!! en blader even door de P&W FAQ voor meer debugtips. Als je er daarmee nog steeds niet uitkomt, dan kun je een nieuw topic openen, maar post dan wel alleen de daadwerkelijke query, niet de code die die query genereert. Bovendien hebben we je datamodel nodig. :)

[ Voor 5% gewijzigd door NMe op 07-06-2005 14:19 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.