asp 环境配置到mysql数据库增删改查
程序员文章站
2022-11-22 16:18:10
碰到很多错误,都一一解决,没有错误的截图,按照我的步骤,您将完成一个最基本的asp的环境配置到增删改查本节总结1,开启iis2,建立“网站”,类似于phpstudy3,odbc连接数据库,不然直接连接mysql数据库报错4,在网站下建立文件直接访问即可,index.asp,conn.asp需要安装的mysql驱动(连接mysql):https://dev.mysql.com/downloads/connector/odbc/vs2019(不安装你就没法安装mysql驱动):https://v...
碰到很多错误,都一一解决,没有错误的截图,按照我的步骤,您将完成一个最基本的asp的环境配置到增删改查
本节总结
1,开启iis
2,建立“网站”,类似于phpstudy
3,odbc连接数据库,不然直接连接mysql数据库报错
4,在网站下建立文件直接访问即可,index.asp,conn.asp
需要安装的
mysql驱动(连接mysql):https://dev.mysql.com/downloads/connector/odbc/
vs2019(不安装你就没法安装mysql驱动):https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Enterprise&rel=16
步骤
1,开启iis
2,建立个"网站",建议不要在c盘
3,odbc连接数据库
,不连接而直接从asp文件中连接的话会报错
图解如何以ODBC方式连接mysql数据库
需要注意的是,有的人选项中没有mysql数据源驱动,所以需要下载,才会出现,然后安装,然后有想吐槽的一点,想要安装mysql还得下载vs,一直没有解决,就像是
烦死了,所以你还得下载vs,找了半天,这是唯一的解决办法,连接之后就可以进行操作了
<%@Language="vbscript" Codepage="65001" %> <!-- 中文显示 -->
<!-- 连接数据库 -->
<%
dim conn
set conn = server.CreateObject("ADODB.connection")
conn.open "driver={MySQL ODBC 8.0 ANSI Driver};server=127.0.0.1; uid=root;pwd=weicunbin123;database=lendbook"
' response.write conn.state '是否连接成功
%>
<!-- 增加--修改--删除 -- 相当于接口-->
<%
dim action,id,title,sql
action = request.queryString("action")
id = request.queryString("id")
title = request.queryString("title")
if action = "update" then
'改
on error resume next 'Err对象保存了“错误信息”
sql = "update a_book_info set title = '"&title&"' where info_id = "&id&""
set res = conn.execute(sql)
if Err.number = 0 then
' response.Write("<script>alert('数据修改成功');window.history.back()</script>")
call successFn("修改")
else
call errFn("数据修改失败或未修改")
end if
elseif action="del" then
'删
on error resume next 'Err对象保存了“错误信息”
sql = "delete from a_book_info where info_id = "&id&""
set res = conn.execute(sql)
if Err.number = 0 then
call successFn("删除")
else
call errFn("数据删除失败")
end if
elseif action="add" then
' 增
on error resume next 'Err对象保存了“错误信息”
sql = "insert into a_book_info(`title`) values('"&title&"')"
set res = conn.execute(sql)
if Err.number = 0 then
call successFn("插入")
else
call errFn("数据插入失败")
end if
end if
' 函数定义
sub successFn(title)
response.Write("<script>alert('数据"&title&"成功');window.history.back()</script>")
end sub
sub errFn(title)
errMessage = "错误号:"&Err.Number & chr(10) & "错误来源:"&Err.Source & chr(10)&"错误描述:"&Err.Description & chr(10)
response.Write(errMessage)
response.Write("<script>alert('"&title&",页面未跳转');</script>")
end sub
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>asp增删改查</title>
</head>
<body>
<%
'查询数据
Set rs = Server.CreateObject( "ADODB.Recordset" )
sql = "select * from a_book_info order by info_id desc limit 0,5"
rs.open sql,conn,1,3 '(1,1为只读数据,1,3为插入数据,2,3是修改数据)
%>
<table border="1" style="border-collapse: collapse;">
<tr>
<td width="10%">id</td>
<td width="40%">title</td>
<td width="10%">操作</td>
</tr>
<%
if (rs.EOF and rs.BOF) then
'1、BOF 和 EOF 属性返回bai布尔型值。
'2、BOF 当前指针的位置是在第一行记录之前,则... EOF 当前指针的位置是在最后一行记录之后,则...
'3、那么这句话的意思就是:如果 rs没有结束并且没有开始(表示在文本排列中),则满足条件,即没有这个数据
response.write "no this daata"
else
' 遍历数据开始
do while not rs.eof '如果指针不再最后一行
' 打印到页面上
' 第一种方式
%>
<tr>
<td><%=rs("info_id")%></td>
<td><input style="width: 100%; height: 100%;border: none; outline-color:red;" type="text" name="<%=rs("info_id")%>" value="<%=rs("title")%>"></td>
<td><a href="?action=del&id=<%=rs("info_id")%>">删除</a> <a name="btn_<%=rs("info_id")%>" οnclick="update(this)">确认修改</a></td>
</tr>
<%
' 第二种方式
' response.write "<tr>"
' response.write "<td>"&rs("info_id")&"</td>"
' response.write "<td>"&rs("title")&"</td>"
' response.write "<td> <a href='?action=del&info_id="&rs("info_id")&"'>删除</a> <a href='?action=updata&info_id="&rs("info_id")&"'>确认修改</a> </td>"
' response.write "</tr>"
rs.movenext '让指针向下移动一行,不然会报错
loop
' 遍历数据结束
end if
%>
</table>
<br>
<br>
<br>
<div class="add">
<input type="text" name="title" value="这是提交到数据库的内容" />
<button οnclick="add()">提交</button>
</div>
<script>
//修改
function update(me){
//取出所对应的数据
const id = me.name.replace("btn_",'')
const title = document.querySelector("input[name='"+id+"']").value
window.location.href="?action=update&title="+title+ "&id="+id
}
//添加
function add(){
if(check()){ //判断条件
window.location.href="?action=add&title="+ document.querySelector("input[name='title']").value
}
}
function check(){
return true;
}
</script>
</body>
</html>
本文地址:https://blog.csdn.net/weixin_44797182/article/details/108976422
上一篇: 央行官员谈数字人民币:在可预见将来,将和纸钞长期并存
下一篇: node对数据库的操作