2024年2月8日发(作者:)
数据库的基本操作无非是:查询记录,写入记录,删除记录,修改记录。
一.记录的写入
先建立一个表单:(把下面文章保存为)
表单提交到,下面是的代码: (把下面代码保存为)
<%
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
name=("name")
tel=("tel")
message=("message")
exec="insert into guest(name,tel,message)values('"+name+"',"+tel+",'"+message+"')"
e exec
set conn=nothing
"记录添加成功!"
%>
在这里前面两句我不说了,后面三句我也不说了,前面说过exec里面的是执行的命令,添加记录的比较繁,大家要仔细看。
insert into后面加的是表的名字,后面的括号里面是需要添加的字段,不用添加的或者字段的内容就是默认值的可以省略。注意,这里的变量一定要和ACCESS里面的字段名对应,否则就会出错。values后面加的是传送过来的变量。exec是一个字符串,"insert into guest(name,tel,message)values('"是第一段,在ASP里面不能嵌双引号,所以可以用'代替双引号,放在双引号里面,连接两个变量用+或者&所以"',"又是一段,中间夹了一个name就是表单传来的变量,这样就可以在这个变量外面加两个'',表示是字符串了,后面的tel是数字型变量所以不需要外面包围'',大家慢慢分析这句话,如果用表单传来的数据代替变量名字的话这句话为(假设name="aaa",tel=111,message="bbb"):"insert into
guest(name,tel,message)values('aaa',111,'bbb')"。
接下来的e 就是执行这个exec命令,最后别忘记把打开的数据库关闭,把定义的组件设置为空,这样可以返回资源。
下面几条语句用于关闭数据库的代码:
set rs=nothing
set conn=nothing
记住,次序不可以颠倒! 可以到数据库里面去看一看,是不是多了记录阿?
二.记录的查询
前次练习时,我们用到下面这样一个程序:
<%
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
exec="select * from guest"
set rs=object("set")
exec,conn,1,1
%>
我们查询的是所有的记录,但是我们要修改、删除记录的时候不可能是所有记录,所有我们要学习检索合适的记录。先看一条语句:
a="aaa"
b=1111110
exec="select * from guestbook where name='"+a+"'and tel="+b
where后面加上的是条件,与是and,或是or,我想=,<=,>=,<,>的含义大家都知道吧。这句话的意思就是搜索name是“aaa”的,并且电话是“1111110”的记录。还有一点就是如果要搜索一个字段里面是不是包含一个字符串就可以这么写:where instr(name,a)也就是搜索name里面有a(aaa)这个字符串的人。
我这里的a,b,是常量,大家可以让a,b是表单提交过来的变量,这样就可以做一个搜索了。
下面大家看看这个代码,理解一下:(把下面代码存为文件)
(把下面代码存为)
<%
name=("name")
tel=("tel")
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
exec="select * from guest where name='"+name+"' and tel="+tel
set rs=object("set")
exec,conn,1,1
%>
<%=rs("name")%> | <%=rs("tel")%> | <%=rs("message")%> | <%=rs("time")%> |
三.数据库的基本操作----删除记录
开门见山,大家直接看程序。
exec="delete * from guest where id="&("id")
上面这句话完成了删除记录的操作,不过锁定记录用了记录唯一的表示id,我们前面建立数据库的时候用的是系统给我们的主键,名字是编号,由于是中文的名字不是很方便,大家可以修改为id,我已经修改了。
不修改的话就是用下面的代码了:
exec="delete * from guestbook where 编号="&("id")
下面我们看完整的代码:一个表单传给ASP文件一个ID,然后这个ASP文件就删除了这个ID。
7.htm
:(可以先运行这个文件看一下所有记录的ID和想删除记录的ID,删除记录以后也可以通过这个文件复查。)
<%
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
exec="select * from guest"
set rs=object("set")
exec,conn,1,1
%>
<%=rs("id")%> | <%=rs("name")%> | <%=rs("tel")%> | <%=rs("message")%> | <%=rs("time")%> |
四.数据库的基本操作----修改记录
先来看代码:(存为就可以了)
<%
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
exec="select * from guest where id="&("id")
set rs=object("set")
exec,conn
%>
<%
set rs=nothing
set conn=nothing
%>
到现在应该分析这个代码没有什么问题了吧,这个代码的作用是接受前面一个页面的ID然后显示这条记录,文本框即是输入的地方也是显示的地方,如果需要修改的话修改以后按提交;如果不需要修改就可以直接按提交按钮。
在这里因为本教程适合初学的,所以也把提交的表单内容给出来,把下面代码存为文件:
这里还有一个东西以前没有说,那就是隐藏的表单元素:hidden元素,里面的value是不用用户输入的,会随着表单一起提交,用于传递变量。
下面是的代码:
<%
set conn=object("tion")
"driver={microsoft access driver (*.mdb)};dbq="&h("data/")
exec="select * from guest where id="&("id")
set rs=object("set")
exec,conn,1,3
rs("name")=("name")
rs("tel")=("tel")
rs("message")=("message")
set rs=nothing
set conn=nothing
%>
在这里, exec,conn,1,3后面的参数是1,3,这我以前提过,修改记录就要用1,3。实际上修改记录很容易看懂,记录集是rs,rs("aa")就是当前记录aa字段的东西,让它等于新的数据("aa")当然就修改了,不过最后别忘记保存,那就是!
说到这里,记录的搜索,读取,修改,插入都说了,通过这最基本的东西就可以作出复杂的东西了,外面的大型数据库:新闻系统,留言簿就是字段多一点罢了。今天的示例中的代码是结合以前的数据库的,以后回去调试分析一下。
测试的流程:首先运行文件:
单击提交后,在下图中修改记录:
修改后单击提交,如下图,说明已经修改成功:
本文发布于:2024-02-08 10:26:27,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170735918767260.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |