怎么用ASP连接sql数据库

 我来答
楚昂熙xE
2022-07-04 · TA获得超过2624个赞
知道小有建树答主
回答量:1478
采纳率:40%
帮助的人:959万
展开全部
能不能详细点啊。
access数据库是mdb文件,如果你用access打开时不能编辑,那就检查一下这个文件是否设置为只读了。
而如果是在ASP中打开这个mdb文件进行数据库的读写,步聚如下:
一、创建Adodb.Connection对象用来连接数据库
使用以下语句:Set Conn=Server.CreateObject("Adodb.Connection")
打开数据库连接:Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("xxx.mdb")
其中的xxx.mdb就是你的access数据库名称(可以加上路径例如:/data/xxx.mdb。

二、创建adodb.recordset记录集对象来打开数据表并获取记录集
使用以下语句:
set rs=server.createobject("adodb.recordset")
rs.open "select * from xxtable",conn,1,3
这样就打开了xxtable这个表,并返回了其中的所有记录,并且是以可编辑状态打开的。其中的conn即是你的数据库连接对象的名称,后面紧跟着的1是recordset记录集对象的游标类型,此处为1表示你通过此SQL语句获得的记录集的游标可以前后移动,这样你就可以进行记录集的循环等操作。最后面的一个数字3,是记录集的锁定类型,3表示可编辑
关于游标类型及锁定类型可以百度搜索一下

通过上面两步,你已经获得了一些记录集并且处于可编辑这些记录集的状态了

接下来就可以使用rs.addnew,rs.update进行记录的新增,更新操作。
比如新增:
rs.addnew() '表示新增一条记录
rs("name")="test1"
rs("pass")="1234"
rs.update()

这样就新增了一条记录,其中的rs.addnew()表示新增一条记录,紧接着用rs("name"),rs("pass")来写入数据到name,pass这两个字段中,然后使用rs.update来保存一下你刚才的写入,这样一条新记录的插入就完成了。

而如果你只是修改一条已有的记录,则不需要rs.addnew(),后面的代码一样即可完成。不过修改记录一般是会先查询指定条件的某一条记录再进行rs.updae

当然你也可以不使用recordset记录集对象,而直接用sql语句的insert,update等来完成。

另外补充说明一点:
如果你发现用recordset或是sql的insert,update不能成功增加记录或修改记录,那么你就检查一下你的这个数据库连接代码是否连接成功(也就是数据库文件的路径是否写对)。如果这些都对,那么你再检查这个数据库文件是否是只读状态,如果也不是只读状态,那么就应该是文件权限的问题了。当你的MDB文件在NTFS格式的磁盘分区中时,需要设置文件的权限才可以写入数据,否则就只能读取。
pieryon
2022-07-05 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14410 获赞数:166869
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
MM_conn_STRING = "Driver={SQL Server};server=(local);uid=sa;pwd=;database=infs;"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING
SET RS=SERVER.CreateObject("ADOBD.recordset")
SQL="SELECT * FROM TABLE ORDER BY ID DESC"
RS.open SQL,CONN,3,3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式