09/10/2018, 23:25
Ai biết ASP giúp mình với
Mình mới tập tọe tìm hiểu về ASP đọc mấy cái giáo trình lẫn lộn giữa MySQL và Access để tìm cách insert dữ liệu. Đoạn code như thế này ko hiểu sao ko thể chèn vào được. Giúp mình xem sai ở chỗ nào cái. Mình dùng CSDL Access
<%
dim conn
Set conn = Server.CreateObject("ADODB.Connection")
strconn="provider=microsoft.jet.oledb.4.0;data Source=" & server.MapPath("db/tuongchay.mdb") & ";"
conn.open strconn
set rs = server.createobject("ADODB.Recordset")
rs.open "select * from thanhvien", conn %>
<table border="1" width="200">
<tr><td>Ho Ten</td><td>Ngay Sinh</td>
<% do while not rs.EOF%>
<tr>
<td><%=rs("Ho_Ten")%></td>
<td><%=rs("Ngay_Sinh")%></td>
</tr>
<% rs.movenext
loop
Ho_Ten=Request.Form("Ho_Ten")
Ngay_Sinh=Request.Form("Ngay_Sinh")
StrSQL="INSERT INTO thanhvien(Ho_Ten,Ngay_Sinh) VALUES("
StrSQL=StrSQL &"'" & Ho_Ten &"',"
StrSQL=StrSQL &"'" & Ngay_Sinh &"',"
StrSQL=StrSQL &")"
Conn.Execute (StrSQL) <== báo lỗi ở đây
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
HoTen: <%=Request.Form("Ho_Ten")%><br>
Ngay sinh: <%=Request.Form("Ngay_Sinh")%>
<form action="" method="post">
<table><tr><td>Ho Ten
<input type=text class=textbox name=Ho_ten size=53>
</td></tr>
<tr><td>Ngay Sinh
<input type=text class=textbox name=Ngay_Sinh size=53>
</td></tr>
<tr><td> </td></tr>
<tr><td>
<input type=submit value='Them'> <input type=reset value='Xoa'>
</td></tr>
</table>
</form>
</table>
Nó báo lỗi như thế này ở dòng 23 là dòng màu đỏ đánh dấu phía trên
Error Type:
Microsoft JET Database Engine (0x80040E14)
Syntax error in INSERT INTO statement.
/tuongchay/vd.asp, line 23
<%
dim conn
Set conn = Server.CreateObject("ADODB.Connection")
strconn="provider=microsoft.jet.oledb.4.0;data Source=" & server.MapPath("db/tuongchay.mdb") & ";"
conn.open strconn
set rs = server.createobject("ADODB.Recordset")
rs.open "select * from thanhvien", conn %>
<table border="1" width="200">
<tr><td>Ho Ten</td><td>Ngay Sinh</td>
<% do while not rs.EOF%>
<tr>
<td><%=rs("Ho_Ten")%></td>
<td><%=rs("Ngay_Sinh")%></td>
</tr>
<% rs.movenext
loop
Ho_Ten=Request.Form("Ho_Ten")
Ngay_Sinh=Request.Form("Ngay_Sinh")
StrSQL="INSERT INTO thanhvien(Ho_Ten,Ngay_Sinh) VALUES("
StrSQL=StrSQL &"'" & Ho_Ten &"',"
StrSQL=StrSQL &"'" & Ngay_Sinh &"',"
StrSQL=StrSQL &")"
Conn.Execute (StrSQL) <== báo lỗi ở đây
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
HoTen: <%=Request.Form("Ho_Ten")%><br>
Ngay sinh: <%=Request.Form("Ngay_Sinh")%>
<form action="" method="post">
<table><tr><td>Ho Ten
<input type=text class=textbox name=Ho_ten size=53>
</td></tr>
<tr><td>Ngay Sinh
<input type=text class=textbox name=Ngay_Sinh size=53>
</td></tr>
<tr><td> </td></tr>
<tr><td>
<input type=submit value='Them'> <input type=reset value='Xoa'>
</td></tr>
</table>
</form>
</table>
Nó báo lỗi như thế này ở dòng 23 là dòng màu đỏ đánh dấu phía trên
Error Type:
Microsoft JET Database Engine (0x80040E14)
Syntax error in INSERT INTO statement.
/tuongchay/vd.asp, line 23
Bài liên quan
StrSQL=StrSQL &"'" & Ho_Ten &"',"
StrSQL=StrSQL &"#" & Ngay_Sinh &"#)"
Dùng # thay cho ' cho kiểu DateTime trong Access
StrSQL="INSERT INTO thanhvien(Ho_Ten,Ngay_Sinh) VALUES("
StrSQL=StrSQL &"'" & Ho_Ten &"',"
StrSQL=StrSQL &"'" & Ngay_Sinh &"'"
StrSQL=StrSQL &")"
neu Ngay_Sinh la kieu Date/Time thi :
StrSQL="INSERT INTO thanhvien(Ho_Ten,Ngay_Sinh) VALUES("
StrSQL=StrSQL &"'" & Ho_Ten &"',"
StrSQL=StrSQL & Ngay_Sinh
StrSQL=StrSQL &")"