Zodra ik onderstaande pagina heb ingevuld krijg ik de melding:
System.Data.OleDb.OleDbException: Syntax error in INSERT INTO statement.
Op lijn 39
Zie hier de asp.net source:
Database layout:
Naam: user_data
Velden:
Id : autonumber
Alle andere velden zijn van het type TEXT
Vraag:
Heeft iemand enig idee waar het nu precies fout gaat? Zoals je ziet in de source heb ik het toevoegen van de Row Items al uitgeschakeld en het probleem blijft aanwezig. Verder heb ik de security op de database op Everyone Full Control staan (niet netjes, maar om even te proberen).
Ik gebruik het boek ASP.NET for Dummies en daar heb ik dit voorbeeld uit overgenomen en aangepast. Het voorbeeld werkt wel.
Ik heb de foutcodes al door google en T.net search heen gehaald zonder een resultaat.
Wie heeft een goed idee? Super bedankt alvast! (word echt helemaal gek
)
System.Data.OleDb.OleDbException: Syntax error in INSERT INTO statement.
Op lijn 39
code:
1
2
3
4
5
| Line 37: UserDS.Tables("user_data").Rows.Add(Row)
Line 38:
Line 39: Adapter.Update(UserDS, "user_data")
Line 40:
Line 41: If UserDS.HasErrors Then |
Zie hier de asp.net source:
code:
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
| <%@ Page Explicit="True" Language="VB" Debug="True" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<script runat="server">
Dim ConnectString, SelectStatement As String
Dim Connect As OleDbConnection = New OleDbConnection
Dim Adapter As OleDbDataAdapter = New OleDbDataAdapter
Dim UsersCB As OleDbCommandBuilder
Dim UserDS As DataSet = New DataSet
Dim Row As DataRow
Sub Submit_Click(Sender As Object, E As EventArgs)
GetAd
Row = UserDS.Tables("user_data").NewRow
'Row.Item("Crf") = "1"
'Row.Item("Username") = UsernameText.Text
'Row.Item("Domain") = DomainDropDown.SelectedItem.Value
'Row.Item("Firstname") = FirstnameText.Text
'Row.Item("Lastname") = LastnameText.Text
'Row.Item("Mail") = EmailText.Text
'Row.Item("Location") = LocationDropDown.SelectedItem.Value
'Row.Item("Sector") = SectorDropDown.SelectedItem.Value
'Row.Item("Department") = DepartmentText.Text
'Dim RoleForDB As String
'Dim ItemNum As Integer
'For ItemNum = 0 To RoleCheckBox.Items.Count - 1
'If RoleCheckBox.Items(ItemNum).Selected = True Then
'RoleForDB = RoleForDB & RoleCheckBox.Items(Itemnum).Text
'End If
'Next
'Row.Item("Role") = RoleForDB
'Row.Item("Date") = Today
UserDS.Tables("user_data").Rows.Add(Row)
Adapter.Update(UserDS, "user_data")
If UserDS.HasErrors Then
Message.Text = "There was an error placing your ad. " & _
UserDS.Tables("user_data").Rows(0).RowError
Else
Message.Text = "All new user information is saved"
End If
End Sub
Sub GetAd
SelectStatement = "Select * From user_data"
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Inetpub\wwwroot\19\data.mdb"
Connect.ConnectionString = ConnectString
Adapter.SelectCommand = _
new OleDbCommand(SelectStatement, Connect)
UsersCB = New OleDbCommandBuilder(Adapter)
Adapter.Fill(UserDS,"user_data")
End Sub
</script>
<html>
<body vlink=red>
<form runat="server">
<b>Enter new user information:</b><p>
<table>
<tr><td>UserName:</td><td><asp:textbox id="UserNameText" runat="server" MaxLength="8"/><asp:requiredfieldvalidator id="UserNameRequired" ControltoValidate="UserNameText" errorMessage="* This field must be filled in" runat="server"></asp:requiredfieldvalidator></td></tr>
<tr><td>Domain:</td><td>
<asp:dropdownlist id="DomainDropDown" runat="server">
<asp:listitem>Pick A Domain</asp:listitem>
<asp:listitem>a</asp:listitem>
<asp:listitem>b</asp:listitem>
</asp:dropdownlist>
<asp:requiredfieldvalidator id="DomainRequired" ControltoValidate="DomainDropDown" errorMessage="* This field must be filled in" initialvalue="Pick A Domain" runat="server"></asp:requiredfieldvalidator>
</td></tr>
<tr><td>FirstName:</td><td><asp:textbox id="FirstnameText" runat="server"/><asp:requiredfieldvalidator id="FirstnameRequired" ControltoValidate="FirstnameText" errorMessage="* This field must be filled in" runat="server"></asp:requiredfieldvalidator></td></tr>
<tr><td>LastName:</td><td><asp:textbox id="LastnameText" runat="server"/><asp:requiredfieldvalidator id="LastnameRequired" ControltoValidate="LastnameText" errorMessage="* This field must be filled in" runat="server"></asp:requiredfieldvalidator></td></tr>
<tr><td>E-mail:</td><td><asp:textbox id="EmailText" runat="server" columns="35"/><asp:requiredfieldvalidator id="EmailRequired" ControltoValidate="EmailText" errorMessage="* This field must be filled in" runat="server"></asp:requiredfieldvalidator><asp:regularexpressionvalidator id="MailOk" ControltoValidate="EmailText" validationexpression="^([a-zA-Z\.]+)@(organon|organonusa|diosynth|organoninc|fr.organon).(com|nl|cz|hu|jp|no|se|fi|co.uk|es|de|pl|dk)$" errorMessage="* This is an invalid e-mail address" runat="server"></asp:regularexpressionvalidator></td></tr>
<tr><td>Location:</td><td>
<asp:dropdownlist id="LocationDropDown" runat="server">
<asp:listitem>Pick A Location</asp:listitem>
<asp:listitem>a</asp:listitem>
<asp:listitem>b</asp:listitem>
<asp:listitem>c</asp:listitem>
<asp:listitem>d</asp:listitem>
</asp:dropdownlist>
<asp:requiredfieldvalidator id="LocationRequired" ControltoValidate="LocationDropDown" errorMessage="* This field must be filled in" initialvalue="Pick A Location" runat="server"></asp:requiredfieldvalidator>
</td></tr>
<tr><td>Sector:</td><td>
<asp:dropdownlist id="SectorDropDown" runat="server">
<asp:listitem>Pick A Sector</asp:listitem>
<asp:listitem>a</asp:listitem>
<asp:listitem>b</asp:listitem>
<asp:listitem>c</asp:listitem>
<asp:listitem>d</asp:listitem>
<asp:listitem>e</asp:listitem>
</asp:dropdownlist>
<asp:requiredfieldvalidator id="SectorRequired" ControltoValidate="SectorDropDown" errorMessage="* This field must be filled in" initialvalue="Pick A Sector" runat="server"></asp:requiredfieldvalidator>
</td></tr>
<tr><td>Department:</td><td><asp:textbox id="DepartmentText" runat="server"/><asp:requiredfieldvalidator id="DepartmentRequired" ControltoValidate="DepartmentText" errorMessage="* This field must be filled in" runat="server"></asp:requiredfieldvalidator></td></tr>
<tr><td>Role:</td><td>
<asp:checkboxlist id="RoleCheckBox" runat="server" repeatcolumns="3" repeatlayout="table">
<asp:listitem>Business Administrator</asp:listitem>
<asp:listitem>C2_Authors</asp:listitem>
<asp:listitem>C2_Approvers</asp:listitem>
<asp:listitem>C2_Authorizers</asp:listitem>
<asp:listitem>C3_Authors</asp:listitem>
<asp:listitem>C3_Approvers</asp:listitem>
<asp:listitem>C3_Authorizers</asp:listitem>
<asp:listitem>C4_Authors</asp:listitem>
<asp:listitem>C4_Approvers</asp:listitem>
<asp:listitem>C4_Authorizers</asp:listitem>
</asp:checkboxlist>
</td></tr>
</table>
<p>
<asp:button text="Save and Next*" onclick="Submit_Click" runat="server"/>
<asp:button text="Save and CRF*" runat="server"/>
<p>
<table>
<tr><td>
*Save and Next:</td><td> Saves this user information and let you add an other user.</td>
<tr><td>*Save and CRF:</td><td> Saves this user information and wil create the appropiate CRF.</td></tr>
</table>
<asp:label id="message" runat="server"/>
</form>
</body>
</html> |
Database layout:
Naam: user_data
Velden:
Id : autonumber
Alle andere velden zijn van het type TEXT
Vraag:
Heeft iemand enig idee waar het nu precies fout gaat? Zoals je ziet in de source heb ik het toevoegen van de Row Items al uitgeschakeld en het probleem blijft aanwezig. Verder heb ik de security op de database op Everyone Full Control staan (niet netjes, maar om even te proberen).
Ik gebruik het boek ASP.NET for Dummies en daar heb ik dit voorbeeld uit overgenomen en aangepast. Het voorbeeld werkt wel.
Ik heb de foutcodes al door google en T.net search heen gehaald zonder een resultaat.
Wie heeft een goed idee? Super bedankt alvast! (word echt helemaal gek