VS连接Access数据库--连接字符串及执行查询语句…
2018-06-17 19:50:09来源:未知 阅读 ()
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;
}
}
主要对这个方法留个备份,也供初学使用者参考。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 链接 Mysql 创建 数据库和创表,增加数据 2019-08-13
- django修改表数据结构后报错的解决办法 2019-07-24
- 原创:Python编写通讯录,支持模糊查询,利用数据库存储 2019-07-24
- Python--代码1(接口测试:测试用例从数据库读取写到yaml文 2019-07-24
- python连接redis 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash