|
主题: 删除SQL语句应如何写?
|
 秋千
职务:普通成员
等级:1
金币:0.0
发贴:160
注册:2000/11/6 16:23:52
|
#12002/3/2 13:54:15
<% dim delid,name,pass delid=trim(request("id")) name=trim(request.form("name")) pass=trim(request.form("pwd")) set conn=server.createobject("adodb.connection") conn.open "Provider=Microsoft.jet.oledb.4.0;Data Source=" & Server.MapPath("mydata.mdb") set rs=server.createobject("ADODB.recordset") rs.Open "select * from pwd", Conn, 1, 2 if name=rs("name") and pass=rs("pwd") then set rs1=server.createobject("ADODB.recordset") rs1.Open "delete * from ly where id = "&delid,conn,1,2 response.redirect "delok.asp" else response.redirect "notuser.asp" end if %> ----------------------------------------- IE中提示如下:Microsoft JET Database Engine 错误 '80040e14'
语法错误 (操作符丢失) 在查询表达式 'id =' 中。
/liuyan/delcl.asp, 行12
|
 I''MAD
职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
|
#22002/3/2 14:43:32
你的SQL没写错,是数据库问题。 <% ' *** Delete Record: declare variables
if (CStr(Request("MM_delete")) <> "" And CStr(Request("MM_recordId")) <> "") Then
MM_editConnection = MM_bb_STRING MM_editTable = "bbs" MM_editColumn = "fid" MM_recordId = "" + Request.Form("MM_recordId") + "" MM_editRedirectUrl = "defalut.asp"
' append the query string to the redirect URL If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString Else MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString End If End If End If %> <% ' *** Delete Record: construct a sql delete statement and execute it
If (CStr(Request("MM_delete")) <> "" And CStr(Request("MM_recordId")) <> "") Then
' create the sql delete statement MM_editQuery = "delete from " & MM_editTable & " where " & MM_editColumn & " = " & MM_recordId
If (Not MM_abortEdit) Then ' execute the delete 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 %> <% set Recordset1 = Server.CreateObject("ADODB.Recordset") Recordset1.ActiveConnection = MM_bb_STRING Recordset1.Source = "SELECT * FROM bbs" Recordset1.CursorType = 0 Recordset1.CursorLocation = 2 Recordset1.LockType = 3 Recordset1.Open() Recordset1_numRows = 0 %>
编辑历史:[这消息被Hmily编辑过(编辑时间2002-03-02 14:43:42)]
|
 秋千
职务:普通成员
等级:1
金币:0.0
发贴:160
注册:2000/11/6 16:23:52
|
#32002/3/2 14:58:30
是数据库的什么问题???
|
 I''MAD
职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
|
#42002/3/2 15:14:16
数据库的命名不能有保留字段,中文名等,还有就是你删的时候是不是前一个页面没有传递值过来,或是一个错误的值。
|
 5D荣誉斑竹
职务:普通成员
等级:3
金币:10.0
发贴:1480
注册:2002/1/15 11:01:54
|
#52002/3/2 18:24:34
不是数据库的问题。 rs1.Open "delete * from ly where id = "&delid,conn,1,2 根本写错了.delete 不能这样用!
strSQL = "delete * from ly where id = " & delid conn.ExeCute strSQL
|
 I''MAD
职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
|
#62002/3/2 21:33:10
不会吧,UD自动生成的一般怎么说也不会出错,除非其它原因。比如说他改了源码。
|
 5D荣誉斑竹
职务:普通成员
等级:3
金币:10.0
发贴:1480
注册:2002/1/15 11:01:54
|
#72002/3/3 1:15:36
他的代码应该不是生成的。 你贴的这个倒一看就是UD的产物。
|
 I''MAD
职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
|
#82002/3/3 13:04:56
呵。。。那我也没办法喽,我注重的是操作和速成。源码也不是太懂,一看就晕。。。  用久了UD自然也会手熟了,一般出错的机会较少。
|