VS连接Access数据库--连接字符串及执行查询语句的方法(增删改查,用户名查重,根据用户获取密码查询)
ACCESS数据的连接及语句执行操作,不难,久不用会生疏,每次都要找资料,干脆自己整理下,记录下来,需要的时候,直接查看,提高效率。也供初学者参考
1、连接字符串
public static string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Directory.GetCurrentDirectory() + "\\**.mdb;";
2、数据语句执行(增删差改,用户名查重,根据用户获取密码查询)
//获取所有数据集--返回所有数据
public static DataSet ExecuteQuery(string strSql) //strsql需要执行的查询语句
{
using (OleDbConnection conn = new OleDbConnection(strConn))
{
try
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
}
OleDbDataAdapter adapter = new OleDbDataAdapter(strSql, strConn);
DataSet ds = new DataSet();
adapter.Fill(ds);
return ds;
}
catch (OleDbException ole)
{
throw ole;
}
finally
{
conn.Close();
}
}
}
//增删改的查询语句的执行--返回受影响行数
public static int ExecuteNonQuery(string strSql) //strsql需要执行的查询语句
{
try
{
using (OleDbConnection conn = new OleDbConnection(strConn))
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
}
OleDbCommand cmd = new OleDbCommand(strSql, conn);
//执行事务,事务将控制和维护事务中每个操作的一致性和完整性
OleDbTransaction ts = conn.BeginTransaction();
cmd.Transaction = ts;
int iRet = cmd.ExecuteNonQuery();
if (iRet > 0)
{
ts.Commit();//如果返回数据大于0,执行操作
}
else
{
ts.Rollback();//不为0,则回滚
}
return iRet;
}
}
catch (OleDbException OleDbException)
{
throw OleDbException;
}
}
/// 查询返回第一行数据---根据用户名查密码(返回根据用户名返回的一条数据)
public static DataRow ExecuteRow(string strLoginSql) //strsql需要执行的查询语句
{
DataRow row;
using (OleDbConnection conn = new OleDbConnection(strConn)) //尝试链接数据库
{
try
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
}
OleDbDataAdapter adapter = new OleDbDataAdapter(strLoginSql, strConn);//实例化一个数据适配器
DataTable ds = new DataTable();
adapter.Fill(ds);//将数据填充到适配器中
if (ds.Rows.Count == 0)
{
row = null;
}
else
{
row = ds.Rows[0];
}
}
catch (Exception ex)
{
return null;
}
finally
{
conn.Close();
}
}
return row;
}
/// 查询结果,返回第一行第一列----用于查重(注册用户名是否已经存在,插入数据是否已经存在)---返回0、1
public static int ExecuteScalar(string strSql) //strsql需要执行的查询语句
{
try
{
using (OleDbConnection conn = new OleDbConnection(strConn))
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
}
OleDbCommand cmd = new OleDbCommand(strSql, conn);
Object obj = cmd.ExecuteScalar();
if (obj != null && !Convert.IsDBNull(obj))
{
return 1;
}
else
{
return 0;
}
}
}
catch (OleDbException OleDbException)
{
throw OleDbException;
}
}
主要对这个方法留个备份,也供初学使用者参考。
VS连接Access数据库--连接字符串及执行查询语句的方法(增删改查,用户名查重,根据用户获取密码查询)的更多相关文章
- 【.net 深呼吸】连接Access数据库应注意的几点
本地数据库可以有Y种选择,比如Sqlite.SQL Server Express.SQL Local DB.SQL Server CE.Access等,本文老周选用比较著名的Access本地数据库,在 ...
- C#连接Access数据库(详解)
做一个用VS2012的C#连接Access数据库的备忘, SQL数据库固然强大,有大微软的强力技术支持,LINQ的方便操作,但是如果写一个小程序对数据库方面没有什么大的要求的话,将来在数据库方面就可以 ...
- ASP.net分别连接SQLserver数据库与连接Access数据库精英版
-------------------------连接access2003 字符串------------------------- Provider=Microsoft.Jet.OLEDB.4.0; ...
- php连接Access数据库错误及解决方法
<?php $connstr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("data.m ...
- php连接Access数据库的三种方法
http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2009/1115/3524.html 虽然不是一个类但先放这儿吧 最近想把一个asp的网站改成 ...
- 三种php连接access数据库方法
种是利用php的pdo,一种是odbc,com接口来与access数据库连接.利用pdo与access数据库连接 $path ="f:fontwww.jb51.netspiderresult ...
- 具体解释VB中连接access数据库的几种方法
在VB中,连接ACCESS数据库的方法主要有以下三种 使用ADO对象,通过编写代码訪问数据库 Connection 对象 ODBC数据源 使用ADO Data 控件高速创建数据库连接 有三种连接方法 ...
- JSP连接access数据库
一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...
- Java Web项目中连接Access数据库的配置方法
本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...
随机推荐
- k8s-应用快速入门(ma)
[root@k8s-master ~]# kubectl run nginx-deploy --image=nginx:1.14-alpine --port=80 --replicas=1 deplo ...
- python爬虫知识点总结(二)爬虫的基本原理
一.什么是爬虫? 答:请求网页并提取数据的自动化程序. 二.爬虫的基本流程 三.什么是Request和Response? 1.Request 2.Response 四.能抓取怎样的数据 五.解析方式 ...
- zk 10之:Curator之三:服务的注册及发现
Service Discovery 我们通常在调用服务的时候,需要知道服务的地址,端口,或者其他一些信息,通常情况下,我们是把他们写到程序里面,但是随着服务越来越多,维护起来也越来越费劲,更重要的是, ...
- python3中,pycharm中怎么连接数据库
因为python3现在还不能直接连接数据库,所有如果想连接,就只能通过以下方法: 在APP中的,__init__.py中,添加以下代码就可以: import pymysql pymysql.insta ...
- QT时钟绘制
Demo的效果 资源占用还能接受 运行久一点内存就下去了 下面是Demo的代码 #include "mainwindow.h" #include "ui_mainwind ...
- huipengly的2018年度总结
一.技术 1.入门C++ 今年看完了一本很厚很厚的书——<c++ primer 5th>.从头到尾,基本上每一个课后练习题都完成了.入门了C++这个大坑,也初步了解了面向对象这个程序抽象方 ...
- Spring如何引用properties文件里的…
[zt]Spring如何引用properties文件里的配置 来自 http://blog.csdn.net/luobo525/archive/2006/11/06/1370258.aspx 1.Pr ...
- php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。
<?php /** * 测试pdo和mysqli的执行效率 */ header("Content-type:text/html;charset=utf-8"); //通过pd ...
- CI框架中,扩展验证码类。
使用CI框架的朋友,应该都知道CI框架的的验证码辅助函数,不太好用.它需要写入到数据库中,然后再进行比对. 大家在实际项目中,好像不会这样去使用,因为会对数据库造成一定的压力. 所以,我们还是利用se ...
- 有两种分别用<bgsound>和<embed></embed>标签,当用<embed>插入背景音乐时可以设置宽度和高度为0,隐藏播放器。
<bgsound>: <bgsound> 是用来插入背景音乐,但只适用于 ie,其参数设定不多.如下 <bgsound src="your.mid" ...