求C# winform中 access连接、读取、添加、删除和修改的通用类 的使用案例。

最好简单的写成案例发给我。。。谢谢QQ404216051

第1个回答  2011-04-13
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApplication1
{
using System.Data;
using System.Data.OleDb;

public class AccessHelp
{
// 连接数据源
private OleDbConnection conn = null;
/// <summary>
/// 数据源
/// </summary>
/// <param name="conStr">数据源连接字符串</param>
public OleDbConnection DataBase(string conStr)
{
conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+ conStr +";Jet OLEDB:System Database=system.mdw;");
this.Open();
return conn;
}
/// <summary>
/// 根据SQL查询返回DataSet对象,如果没有查询到则返回NULL
/// </summary>
/// <param name="sql">查询语句</param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string sql)
{
DataSet ds = new DataSet();
try
{
OleDbCommand cmd = new OleDbCommand(sql, conn);
cmd.CommandTimeout = 20;
System.Data.OleDb.OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
adapter.Fill(ds, "tempTable");
}
catch (Exception e)
{
ds = null;
}
return ds;
}
/// <summary>
/// 根据SQL查询返回DataSet对象,如果没有查询到则返回NULL
/// </summary>
/// <param name="sql">查询语句</param>
/// <param name="sRecord">开始记录数</param>
/// <param name="mRecord">最大记录数</param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string sql, int sRecord, int mRecord)
{
DataSet ds = new DataSet();
try
{
OleDbCommand cmd = new OleDbCommand(sql, conn);
cmd.CommandTimeout = 20;
System.Data.OleDb.OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
adapter.Fill(ds, sRecord, mRecord, "tempTable");
}
catch (Exception e)
{
ds = null;
}
return ds;
}
/// <summary>
/// 对数据库的增,删,改的操作
/// </summary>
/// <param name="sql">SQL语句</param>
/// <returns>是否成功</returns>
public bool ExecuteDataBase(string sql)
{
bool succeed = false;
int cnt = 0;
try
{
OleDbCommand cmd = new OleDbCommand(sql, conn);
cmd.CommandTimeout = 20;
if (this.Open())
cnt = cmd.ExecuteNonQuery();
}
catch (Exception e)
{
e.ToString();
}
finally
{
if (cnt > 0)
{
succeed = true;
}
}
return succeed;
}
/// <summary>
/// 获得该SQL查询返回的第一行第一列的值,如果没有查询到则返回NULL
/// </summary>
/// <param name="sql">查询语句</param>
/// <returns>返回的第一行第一列的值</returns>
public string GetScalar(string sql)
{
string str = null;
try
{
OleDbCommand cmd = new OleDbCommand(sql, conn);
if (this.Open())
str = cmd.ExecuteScalar().ToString();
}
catch (Exception e)
{
e.ToString();
}
return str;
}

/// <summary>
/// 获得该SQL查询返回DataTable,如果没有查询到则返回NULL
/// </summary>
/// <param name="sql">查询语句</param>
/// <returns></returns>
public DataTable GetDataTable(string sql)
{
DataTable tb = null;
DataSet ds = this.GetDataSet(sql);
if (ds != null)
{
tb = ds.Tables["tempTable"];
}
return tb;
}
/// <summary>
/// 打开数据库连接.
/// </summary>
private bool Open()
{
bool succeed = false;
try
{
if (conn.State == System.Data.ConnectionState.Closed)
{
conn.Open();
succeed = true;
}
else if (conn.State == System.Data.ConnectionState.Broken)
{
conn.Close();
conn.Open();
succeed = true;
}
else if (conn.State == System.Data.ConnectionState.Open)
{
succeed = true;
}
}
catch (Exception e)
{
e.ToString();
}

return succeed;
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public void Close()
{
if (conn != null)
{
conn.Close();
}
}
/// <summary>
/// 释放数据库连接资源
/// </summary>
public void Dispose()
{
if (conn != null)
{
conn.Dispose();
conn = null;
}
}
}

}
你只要把Access数据库的存在的目录地址,调用DataBase这个方法就行了
仔细看看这个help类,都有中文解释的,和SqlHelper类一样调用,很简单的
项目我先发到你的QQ邮箱,今天加你QQ,可能你不在线吧
你邮箱设置了禁止接收陌生邮件的,我发离线文件给你吧本回答被提问者采纳
第2个回答  2011-04-05
在百度搜“SQL语句大全”,下载看一下,就都可以了。

c#简单的添加,删除,修改数据
以下是后台代码,前台窗体上有3个按钮,一个dataGridView和几个TextBox。另,这里用到的是Access数据库,你只要将Access数据库文件放在解决方案的bin\/Debug目录下就可以了。切记要添加的内容一定要和数据库表对应起来,否则会异常!using System;using System.Collections.Generic;using System.ComponentModel;u...

如何通过C#连接access数据库,读取某一行的数据?
建立FORM窗体,加个按钮控件,加一个DATAGRIDVIEW控件,双击FORM,加入命名空间usingSystem.Data.OleDb; 双击按钮,进入按钮代码。OleDbConnectionstrConnectionnewOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+"员工信息.mdb"+";PersistSecurityInfo=False")。2.\/\/建立数据库引擎连接,注意数...

...C#怎么连接access数据库?实现数据库的添加、删除操作?
前台代码:<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowDeleting="GridView1_delete" > 后台代码: protected void GridView1_delete (object sender, GridViewDeleteEventArgs e) { …… } 注意加粗部分

谁能帮我用C#+ACCESS写一个程序
1,打开Office的Access,单击“空白数据库”,添加字段,保存时添加表名。2,建一个C#的WinForm程序,添加数据源,将Access的数据库作为数据源,刚才创建的表作为数据源对象。3,表的绑定控件选择默认的DataGridView,将表拖到窗口,调整位置大小,编译程序就可以运行。有你所要求的删除按钮,至于插入和更新...

c# winform Access 操作 文件夹创建 急!!!
创建app.config配置文件...导入连接字符串...当你的数据库文件一定存在..而且开启了连接服务的话..那么就不受影响 <?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name ="conStr" connectionString="Data Source = .;Initial Catalog = bookshop;Integrated ...

winform,用c#链接 sql server。对数据库进行查询记录,增加记录,删除记录...
C#连接Sql的步骤:①:添加引用using System.Data.SqlClient;②:创建连接字符串;③:创建SQL执行语句;③:创建SqlConnection对象;④:打开连接;⑤:创建SqlCommand对象;⑥:关闭连接;---下面是增加记录的代码--- string ConnString = "Data Source=SAWYER-PC;Initial Catalog=InfoDemo;Persist Security I...

C# winform access 局域网访问
1,那么使用access,若要能让客户端的机器都连接上你的机器,首先得保证,这些机器都能访问到你的这个mdb文件 2,若要都能访问到这个文件,很明显是你这个文件所处的文件夹要设置成共享。3,那么我们再回想下,怎么访问局域网共享文件夹下的文件?其实我们大家都使用过,通过IP方式就能获取到需要访问的...

c# 在 ACCESS 中按条件查询数据,合并相加多条符合条件的结果,详见下 ...
FROM LDMZw01 WHERE 菜名="鲜肉羊肉串"有四条数据取第一条数据 你这个数据库设计的有问题,你查询的如果是库存的话,那么应该在库存表,库存表内物品的id应该是唯一的;如果是查销售情况的话,那么应该是根据物品的id去查销售量,然后结合库存表,查单价,然后,销售量*单机得出总价,应该是这样。

C# 读取access中 多值字段的问题
\/\/连接access部分 ***.mdb是你的access 文件 try { Connection = new OleDbConnection (@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=***.mdb");Connection.Open();} catch(Exception ex){ \/\/连接错误到这里 } \/\/获取该姓名的数据 赋值给一个DataSet DataSet dsMsg = new DataSet();s...

关于C#winform程序向access数据库表中insert into数据时的一个...
对于单引号的问题,一般有两个方法解决:用三个单引号,类似转义,表示1个单引号。用参数,来实现。

相似回答
大家正在搜