第三章:应用数据库创建动态网页
第五节:编辑数据库中的纪录
要编辑或者删除纪录,首先我们要知道我们正在编辑或者正在删除的是那条记录。张冠李戴的话就不是我们想要的结果了 :) 前面讲数据库设计的时候,特别提到,一个表要有一个主键才能够确定纪录的唯一性,才不会造成删除或者编辑的错误。比如说我们要找一个叫张三的人,但是同时有十几个叫张三的人存在,这样我们就要根据一定的特征来确定哪个张三才是你要找的。主键也是如此,主键可以由一个子段组成,也可以由几个子段组成。对我们这个userinfo表来讲,主键就是名为id的自动编号字段,这个id值是唯一的,就是说我们只要知道一个id就可以唯一的找到一条记录,这样,我们的编辑删除操作就可以正常进行了。
好,唠叨了这么久,就开始我们的旅行吧。
让我们打开我们开始做的那个数据显示的页面来,添加多两个单元格,分别做上编辑和删除的连接,如图。
编辑的连接为: edit.asp?id=<%=(recordset1.fields.item("id").value)%>
删除的连接为: del.asp?id=<%(recordset1.fields.item("id").value)%>
诸位要问了,这表示什么意思?,让我细细道来。
edit.asp?id=<%=(recordset1.fields.item("id").value)%>
表示点击这个连接后会打开名为edit.asp的页面,并向这个页面传递一个名为id,值为<%=(recordset1.fields.item("id").value)%>的参数,然后在edit.asp这个页面就会根据这个传递过去的参数来取出相应的记录进行处理。
朋友们看到了没有,<%=(recordset1.fields.item("id").value)%>其实就是我们data bindings中的id字段的值了。每一个记录对应只有一个唯一的id值,也就是这个<%=(recordset1.fields.item("id").value)%>,当edit.asp获得这个值的时候就能取出这条记录来,至于怎么取,让我们往下看。对了,对删除的连接也是做这样的处理。
新建一页,保存为edit.asp,然后我们像上面介绍的那样,开始创建记录集,但是这次的记录集创建过程有一些不一样了,如图所示:
以前我们创建记录集的时候并没有用到filter。顾名思义,它是根据一定的条件来过滤掉某些我们不需要的数据。filter里面列出的是你数据库表的字段,这里我们选择,然后将条件设置为" = " ,接着我们下拉id下面的选择框,选择url parameter,填上id。
为什么选这个?上面我们的连接形式不是:
edit.asp?id=<%=(recordset1.fields.item("id").value)%> class="coffee">
吗,看出点端倪来了吧,edit.asp?id=....这个id就是url parameter了,是随你取的,只要我们在这里填对来。设置完这些后就表示,我们的记录集只选取id字段的值等于我们传递过去的id的值。当然,因为我们只传了一个值过去,所以,取出来的记录将只有一条。
记录集取出来之后怎么修改呢?其实,就是相当于重新插入一遍数据。
打开菜单 insert -> live objects -> record update form
噢!是不是跟那个record insert form很像啊,不同的地方只多了一项unique key column (唯一关键字字段),也就是我们上面唠叨了半天的主键了,选择为id字段,接下来的事就简单了,按照我们在添加纪录一节中学到的,修改到你满意为止。defulat value不用管它,最终结果如图所示。
好,咱么外甥打灯笼-照旧,打开浏览器来检验我们的成果,选择我们刚刚添加进取的纪录:dd 进行编辑,如图所示。
点击update record按钮后跳转到显示页面,如图所示,我们的数据已经被更改了,呵呵,开心吧!
ok,看完这个数据编辑的过程后,相信删除操作对你来将已经不是一件难事了,下一节我们将的讲解如何进行数据的删除。你也可以轻松一下了---毕竟这个编辑纪录的某些地方还是比较费解的 :)
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器