|
- ASP基础实例教程之五个小时学会Asp连接access添加,删除,修改
- (第一个小时)
- 1:首先建立一个access数据库保存为 xhnew.mdb 表名为aa
- 字段如下:
- id 自动排序
- name 文本
- content 文本
- xhtime 日期 默认值 now()
- title 文本
- 2:打开DW 建立文件conn.asp文件
- 代码如下:
- CODE:
- <%
- set conn=server.createobject("adodb.connection")
- conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("xhnew.mdb")
- %>
- 这段语句是连接数据库的语句 set conn=server.createobject("adodb.connection")创建一个connection对象 用该对象的open方法打开数据库
- driver={microsoft access driver (*.mdb)};这句语句是access的驱动
- dbq="&server.mappath("xhnew.mdb")这句是数据库的路径
- 建立conn.asp是为了方便接下来的教学。。。
- 我们可以任何要用到打开数据库连接的文件里加
- <!--#include file="conn.asp"-->就可以调用
- 是不是很方便。第一个小时就学这么多。。。当你弄明白上面的数据库还有代码后。。
- 就继续跟着我学吧!
- (第2个小时)
- 现在来学把数据库的信息输出来
- 下面先建立一个主文件index.asp
- 代码如下
- CODE:
- <!--#include file="conn.asp"-->
- <%
- exec="select * from aa order by id desc "
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,1
- %>
- <table width="628" height="24" border="1" align="center" cellpadding="1" cellspacing="0">
- <%
- if rs.eof and rs.bof then
- response.write("暂时没有文章")
- else
- do while not rs.eof
- %>
- <tr>
- <td width="66" height="22" ><%=rs("id")%></td>
- <td width="66" ><%=rs("name")%></td>
- <td width="66" ><%=rs("content")%></td>
- <td width="273" ><%=rs("xhtime")%></td>
- <td width="53" ><%=rs("title")%></td>
- <td><a href="modify.asp?id=<%=rs("id")%>" target="_self">编辑</a></td>
- <td width="32" ><a href="del.asp?id=<%=rs("id")%>">删除</a></td>
- </tr>
- <%
- rs.movenext
- loop
- end if
- %>
- </table>
- <%
- rs.close
- set rs=nothing
- conn.close
- set conn=nothing
- %>
- <td><a href="add.asp">添加</a></td>
- [Copy to clipboard]
- 代码解释:
- (1)<%
- exec="select * from aa order by id desc "
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,1
- %>
- 上面的代码是创建一个recordset对象。。该对象是用来打开数据库中的表的。。也就是打开aa
- exec="select * from aa order by id desc " 这句的意思是查找表aa中所有信息并倒序排列
- 信息. *号表示aa中所有的信息 order by id 就是aa中id字段 desc 是倒序的意思
- rs.open exec,conn,1,1 这句话的意思是用recordset对象来打开conn中的表
- (2)
- <%
- if rs.eof and rs.bof then
- response.write("暂时没有文章")
- else
- do while not rs.eof
- %>
- 上面是if语句。。if else语句是相当重要的。。
- 希望一些初学者要认真的研究一下if else语句。。不可心急。基础才是硬道理
- rs.eof 的意思是aa表中的最后一条记录 那么rs.bof就是第一条记录
- 整个语句用中文翻译就是 当aa表中的最后和最前一条信息没有的时候。。就输出暂时没有文章
- 或则就循环到eof最后一条信息。。
- (3)<tr>
- <td width="66" height="22" ><%=rs("id")%></td>
- <td width="66" ><%=rs("name")%></td>
- <td width="66" ><%=rs("content")%></td>
- <td width="273" ><%=rs("xhtime")%></td>
- <td width="53" ><%=rs("title")%></td>
- <td><a href="modify.asp?id=<%=rs("id")%>" target="_self">编辑</a></td>
- <td width="32" ><a href="del.asp?id=<%=rs("id")%>">删除</a></td>
- </tr>
- 上面的代码比较容易理解。。<%=rs("id")%>这个用法是输出数据库字段id..
- <a href="modify.asp?id=<%=rs("id")%>" target="_self">编辑</a>这段很重要。。
- 我来解释一下。。在ie窗口点 编辑 的时候。。页面会跳转到modify.asp的文件里的id
- 并进行相应的处理。。这里很难解释清楚。。在接下来的例子中再慢慢解说
- (4)
- <%
- rs.movenext
- loop
- end if
- %>
- 这句是循环结束的语句
- rs.movenext 这句是游标向下指的意思
- (5)
- <%
- rs.close
- set rs=nothing
- conn.close
- set conn=nothing
- %>
- 这句是关闭数据库的语句
- 用完数据库后要记得关闭数据库。。以免占用资源
- 养成随手关门的好习惯
- 就学到这里。。好好消化上面的代码。。心急吃不了热豆腐。。
- 一步一个脚印最塌实
- (第3个小时)
- 现在来学添加数据到数据库 需要两个文件来实现
- (1)先建立一个提交表单add.asp
- 代码如下:
- CODE:
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
- <title>无标题文档</title>
- </head>
- <body>
- <form name="form1" method="post" action="add_new.asp">
- 名字 <input type="text" name="name"><br>
- 备注 <input type="text" name="content"><br>
- 题目<input type="text" name="title" ><br>
- <input type="submit" name="Submit" value="提交">
- <input type="reset" name="Submit2" value="重置">
- </form>
- </body>
- </html>
- [Copy to clipboard]
- 上面代码要注意的是action="add_new.asp"提交到add_new.asp文件
- 还有name="name" name="content" name="title" 名字要对应
- (2)处理文件add_new.asp
- 代码如下:
- CODE:
- <!--#include file="conn.asp"-->
- <%
- name=request.form("name")
- content=request.form("content")
- title=request.form("title")
- exec="insert into aa(name,content,title) values('"+name+"','"+content+"','"+title+"')"
- conn.execute exec
- conn.close
- set conn=nothing
- response.redirect "index.asp"
- %>
- 代码解释:
- (1)
- name=request.form("name")
- content=request.form("content")
- title=request.form("title")
- 这三句语句是接收add.asp发来的信息。。request.form("name")就是对应add.asp中的name="name"
- (2)
- exec="insert into aa(name,content,title) values('"+name+"','"+content+"','"+title+"')"
- conn.execute exec
- 上面的语句是数据库插如信息的语句
- insert into aa(name,content,title) 中文意思是插入信息对应aa表中的三个字段
- 三个字段的数值是values('"+name+"','"+content+"','"+title+"') 这里面对应的值是
- 这三句语句
- name=request.form("name")
- content=request.form("content")
- title=request.form("title")
- 传递的
- (3)
- conn.close
- set conn=nothing
- response.redirect "index.asp"
- 关闭数据库。。写如成功后自动转页面到index.asp
- 到这里相信你已经学会如何添加新记录到数据库了。。
- 那就跟着我接着学吧。。。
- (第4个小时)
- 接下来我们来学删除数据库信息。。。
- 删除信息比较简单。。只需要一个文件del.asp
- 代码如下:
- CODE:
- <!--#include file="conn.asp"-->
- <%
- exec="delete * from aa where id="&request.querystring("id")
- conn.execute exec
- conn.close
- set conn=nothing
- response.redirect "index.asp"
- %>
- 代码解释:
- exec="delete * from aa where id="&request.querystring("id")
- conn.execute exec
- 先翻译成中文意思
- 删除表aa中id字段的值。。这个值等于="&request.querystring("id")
- 还记得我们建立index.asp文件的时候吗?里面有段语句是这样的
- <td width="32" ><a href="del.asp?id=<%=rs("id")%>">删除</a></td>
- 大家现在看明白了吧!你们这么聪明。。一定明白了。
- 我再补充说两句
- 当我们点击删除的时候。。。这个时候就会连接到del.asp做处理。。
- 而同时del.asp接收到我们的请求是通过"&request.querystring("id")这句语句
- 然后conn.execute exec 这条语句就执行删除。。
- 整个流程就是这样。。。
- 希望学习的人好好弄清楚。。那样我们才可以继续学习修改
- (第5个小时)
- 现在学习数据的修改。 这是难点。。大家要认真的跟着我学。。
- 本人也是看了很久才学会的。。解释的不好多多包容。。
- 修改需要两个文件
- (一)建立modify.asp 和del.asp很像似
- 代码如下:
- CODE:
- <!--#include file="conn.asp"-->
- <%
- exec="select * from aa where id="&request.querystring("id")
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,1
- %>
- <form name="form1" method="post" action="modifysave.asp">
- <table width="748" border="0" cellspacing="0" cellpadding="0">
- <tr>
- <td>name</td>
- <td>content</td>
- <td>title</td>
- </tr>
- <tr>
- <td>
- <input type="text" name="name" value="<%=rs("name")%>">
- </td>
- <td>
- <input type="text" name="content" value="<%=rs("content")%>">
- </td>
- <td><input type="text" name="title" value="<%=rs("title")%>">
- <input type="submit" name="Submit" value="提交">
- <input type="hidden" name="id" value="<%=request.querystring("id")%>">
- </td>
- </tr>
- </table>
- </form>
- <%
- rs.close
- set rs=nothing
- conn.close
- set conn=nothing
- %>
- 代码解释:
- (1)
- <%
- exec="select * from aa where id="&request.querystring("id")
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,1
- %>
- 这句exec="select * from aa where id="&request.querystring("id")我在del.asp里解释过了
- 在这里也是一样的道理
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,1
- 上面是用recordset对象打开数据表。。。
- (2)
- <input type="text" name="name" value="<%=rs("name")%>">
- 这里要注意名字要对应。。否则或出错。。
- <input type="hidden" name="id" value="<%=request.querystring("id")%>">
- 这里是隐藏表单。。。提交隐藏的表单元素会随着表单一起提交,用于传递变量
- (二)建立modifysave.asp 文件
- 代码如下:
- CODE:
- <!--#include file="conn.asp"-->
- <%
- exec="select * from aa where id="&request.form("id")
- set rs=server.createobject("adodb.recordset")
- rs.open exec,conn,1,3
- %>
- <%
- rs("name")=request.form("name")
- rs("content")=request.form("content")
- rs("title")=request.form("title")
- rs.update
- rs.close
- set rs=nothing
- conn.close
- set conn=nothing
- response.redirect"index.asp"
- %>
- 代码解释:
- (1)
- rs("name")=request.form("name")
- rs("content")=request.form("content")
- rs("title")=request.form("title")
- 这三句话的意思是数据库中的rs("name")的值等于接收到request.form("name")的值
- request.form("name")的值是从modify.asp传递来的。。
- (2)
- rs.update 这句语句是更新数据库里的信息的意思 就是把提交的信息上传到数据库
- aspAsp连接access添加,删除,修改已经都教完了
- 许多大的系统如新闻发布系统都是在这个基础上建立的
- 希望大家能学有所成
复制代码 来源:https://blog.csdn.net/form88/article/details/66476298 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|