ASP连接access 数据库的增删改查 - imsoft.cnblogs
里面有2个表:
1.admin
2.news
假设admin是保存用户名和密码,里面有字段:UserName,PassWord.
假设我们要在判断一个用户名叫name,密码是pass的人是否合法,也就是数据库里面是否有这个记录,那么要进行以下几步:
1.建立一个连接对象,连接到数据库;
2.建立一个记录对象;
3.用记录对象通过sql语句对表中的内容进行操作;
4.读取sql语句的结果并处理;
5.关闭记录对象,关闭连接对象.
第一步代码:
Dim Conn,DateBase,connstr
DateBase = "/data/data.mdb"
ConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(DateBase)
On Error Resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Connstr '打开数据库
If Err Then
Err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请打开conn.asp文件检查连接字串。"
Response.End
End If
第二步代码:
Dim Rs
Set Rs=Server.CreateObject("ADODB.RecordSet") '建立一个记录对象
第三步代码:
Dim Sql,UserName,PassWord
UserName="name" '给变量赋值
PassWord="pass"
Sql="select * from Admin Where Name='" & UserName &"' and PassWord='" & PassWord &"'"
Rs.open Sql,Conn,3,3
当第三步完成后,对数据库的查询就成功了,然后就可以读取sql的结果了:
A.查询记录:
If Rs.eof then
response.write "不存在此记录或者输入错误" '如果到了表的末尾都没发现,当然就不存在此用户,或者用户名不对
else
response.write "存在,用户名和密码正确"
end if
B.添加记录:(比如添加一个名叫pig密码是dog的记录)
1.进行第一步
2.进行第二步
3.连接到表
Sql="select * from Admin"
Rs.open Sql,Conn,3,3
4.添加:
Rs.AddNew
Rs("UserName")="pig"
Rs("PassWord")="dog"
Rs.Update
C.修改记录:(比如把名pig的密码修改成cat)
1.进行第一步
2.进行第二步
3.连接到表中名UserName为pig的记录:
UsersName="pig"
Sql="select * from Admin where UserName='" & UserName & "'"
Rs.open Sql,Conn,3,3
4.添加:
Rs("PassWord")="cat"
Rs.Update
D.删除记录:(比如删除用户名为pig的记录)
1.进行第一步
2.进行第二步
3.删除表中名UserName为pig的记录:
UsersName="pig"
Sql="delete * from Admin where UserName='" & UserName & "'"
Rs.open Sql,Conn,3,3
Rs.open Sql,Conn,3,3也可以直接写成:Conn.execute(Sql)
总结:
重点在给Sql赋值这一句,他决定你进行什么操作,相关内容详情请参考介绍sql语句的书籍,姜波有.
相关结果: 说明
Rs.RecordCount '查询到的记录个数
Rs.AddNew '添加新记录
Rs.Update '更新,用于修改和添加以后
Rs.MoveNext '移动到下一条记录
Rs.MoveLast '移动到上一条记录
Rs.open Sql,Conn,1,3 是什么意思
我们把 1,3 用A ,B来表示
Rs.open Sql,Conn,A,B
A:
ADOPENFORWARDONLY(=0) 只读,且当前数据记录只能向下移动
ADOPENKEYSET(=1) 只读,当前数据记录可自由移动
ADOPENDYNAMIC(=2) 可读写,当前数据记录可自由移动
ADOPENSTATIC(=3) 可读写,当前数据记录可自由移动,可看到新增记录
B:
ADLOCKREADONLY(=1) 缺省锁定类型,记录集是只读的,不能修改记录
ADLOCKPESSIMISTIC(=2) 悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。
ADLOCKOPTIMISTIC(=3) 乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。
ADLOCKBATCHOPTIMISTIC(=4) 批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。
当不需要改动任何记录时,应该使用只读的记录集,这样提供者不用做任何检测。
对于一般的使用,乐观的锁定可能是最好的选择,因为记录只被锁定一小段时间,
数据在这段时间被更新。这减少了资源的使用。
最后别忘记关闭:
Rs.Close
Set Rs=nothing
Conn.close
Set Conn=nothing
ASP连接access 数据库的增删改查 - imsoft.cnblogs的更多相关文章
- c#连接Access数据库及增删改查作
access:版本2003(后缀.mdb,新版access可另存为2003兼容版) using: using System;using System.Data;using System.Windows ...
- java jdbc 连接mysql数据库 实现增删改查
好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...
- 通过jdbc连接MySql数据库的增删改查操作
一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...
- C++ API方式连接mysql数据库实现增删改查
这里复制的 http://www.bitscn.com/pdb/mysql/201407/226252.html 一.环境配置 1,装好mysql,新建一个C++控制台工程(从最简单的弄起,这个会了, ...
- 【C#】使用NHibernate连接MySQL数据库及增删改查
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...
- 在MFC里面使用ADO访问微软的ACCESS数据库 实现增删改查
声明:百度以外的公司可以自由转载该文. 正如我上一篇博文提到,ADO这货和MFC没有任何关系,ADO 是一个独立的组件.所以为了使用ADO 我们就要把ADO引入到MFC中. ADO是硬盘上的表现形式是 ...
- 使用nodejs连接mysql数据库实现增删改查
首先要有数据库 使用xampp 或者 phpstudy 可以傻瓜式安装 新建一个项目文件夹 之后在这个目录下初始化package.json (npm init) 先在项目中安装mysql 和 ex ...
- 使用NHibernate连接MySQL数据库及增删改查
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...
- php 连接mysql数据库以及增删改查
php 连接数据库 一般是用面向对象的方法,需要先创建一个对象,即造一个连接对象,然后再写sql语句,(增改查删),最后执行sql语句 其中在创建连接对象时 我们用到的是MySQLI 是不区分大小写 ...
随机推荐
- Time, Clocks, and the Ordering of Events in a Distributed System
作者:Leslie Lamport(非常厉害的老头了) 在使用消息进行通信的分布式系统中,使用物理时钟对不同process进行时间同步与事件排序是非常困难的.一是因为不同process的时钟有差异,另 ...
- 2、IValueConverter应用
1.C#代码如下: public class logotoimgConverter:IValueConverter { //将logo转换为URI public object Convert(obje ...
- Servlet初识
1.servlet的生命周期 servlet生命周期中的三大重要时刻 servlet从不存在状态迁移到初始化状态(能够为客户提供服务),首先是从构造函数开始,但是构造函数只是使其成为一个对象,而不是一 ...
- SharePoint表单和工作流 - Nintex篇(二)
博客地址 http://blog.csdn.net/foxdave 接上篇点击打开链接 试用版获得的示例网站是一个SharePoint 2010 Server版的网站,我们先来看一下Nintex整个一 ...
- poj3126 筛素数+bfs
//Accepted 212 KB 16 ms //筛素数+bfs #include <cstdio> #include <cstring> #include <iost ...
- Bayeux
Bayeux是一种用来在客户端和服务器端传输低延迟的异步消息(主要通过http)的一种协议.它定义的消息通过命名通道进行路由并且能够进行交互传 送:server -> client, clien ...
- (转)Eclipse “cannot be resolved to a type” error
原:http://www.cnblogs.com/xuxm2007/archive/2011/10/20/2219104.html Eclipse “cannot be resolved to a t ...
- (spring-第6回【IoC基础篇】)BeanDefinition——实例化Bean之前的第一大利器。
上节讲了Bean实例化的内部机制,这里再复述一遍: ResourceLoader从系统中加载XML配置信息,并由Resource来表示. BeanDefinitionReader从Resource中读 ...
- NSHTTPCookie类详解
继承自 NSObject的 符合 NSObject的(NSObject的) 框架 /系统/资源库/框架/ Foundation.framework 可用性 安装使用Safari 1.0在Mac OS ...
- UVA821 floyd最短路+暴力
题意:给n条边,求每两个点之间的平均距离: 思路:数据是100条边,用floyd得到每两点之间的最短距离,然后遍历相加除以边的数目: #include <iostream> #includ ...