C#如何连接ACCESS数据库,并在里面去数据!!
1个回答
展开全部
using
System.Data;
using
System.Data.OleDb;
private
OleDbConnection
con;
///
<summary>
///
打开数据库连接
///
</summary>
///
<param
name="DBpath">数据库路径(包括数据库名)</param>
private
void
Open(String
DBpath)
{
if(con
==
null)
con
=
new
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
+
DBpath);
if
(con.State
==
ConnectionState.Closed)
con.Open();
}
///
<summary>
///
创建一个命令对象并返回该对象
///
</summary>
///
<param
name="sqlStr">数据库语句</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>OleDbCommand</returns>
private
OleDbCommand
CreateCommand(string
sqlStr,
string
file)
{
Open(file);
OleDbCommand
cmd
=
new
OleDbCommand();
cmd.CommandType
=
CommandType.Text;
cmd.CommandText
=
sqlStr;
cmd.Connection
=
con;
return
cmd;
}
///
<summary>
///
执行
///
</summary>
///
<param
name="sqlStr">SQL语句</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>返回数值当执行成功时候返回true,失败则返回false</returns>
public
bool
ExecuteNonQury(string
sqlStr,
string
file)
{
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
int
result
=
cmd.ExecuteNonQuery();
if
(result
==
-1
|
result
==
0)
{
cmd.Dispose();
Close();
return
false;
}
else
{
cmd.Dispose();
Close();
return
true;
}
///
<summary>
///
执行数据库查询
///
</summary>
///
<param
name="sqlStr">查询语句</param>
///
<param
name="tableName">填充数据集表格的名称</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>查询的数据集</returns>
public
DataSet
GetDataSet(string
sqlStr,
string
file)
{
DataSet
ds
=
new
DataSet();
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
OleDbDataAdapter
dataAdapter
=
new
OleDbDataAdapter(cmd);
dataAdapter.Fill(ds);
cmd.Dispose();
Close();
dataAdapter.Dispose();
return
ds;
}
///
<summary>
///
生成一个数据读取器OleDbDataReader并返回该OleDbDataReader
///
</summary>
///
<param
name="sqlStr">数据库查询语句</param>
///
<returns>返回一个DataReader对象</returns>
public
OleDbDataReader
GetReader(string
sqlStr,
string
file)
{
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
OleDbDataReader
reader
=
cmd.ExecuteReader(CommandBehavior.CloseConnection);
//CommadnBehavior.CloseConnection是将于DataReader的数据库链接关联起来
//当关闭DataReader对象时候也自动关闭链接
return
reader;
}
///
<summary>
///
关闭数据库
///
</summary>
public
void
Close()
{
if
(con
!=
null)
con.Close();
con
=
null;
}
传进来的路径是带上Access数据库名的
System.Data;
using
System.Data.OleDb;
private
OleDbConnection
con;
///
<summary>
///
打开数据库连接
///
</summary>
///
<param
name="DBpath">数据库路径(包括数据库名)</param>
private
void
Open(String
DBpath)
{
if(con
==
null)
con
=
new
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
+
DBpath);
if
(con.State
==
ConnectionState.Closed)
con.Open();
}
///
<summary>
///
创建一个命令对象并返回该对象
///
</summary>
///
<param
name="sqlStr">数据库语句</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>OleDbCommand</returns>
private
OleDbCommand
CreateCommand(string
sqlStr,
string
file)
{
Open(file);
OleDbCommand
cmd
=
new
OleDbCommand();
cmd.CommandType
=
CommandType.Text;
cmd.CommandText
=
sqlStr;
cmd.Connection
=
con;
return
cmd;
}
///
<summary>
///
执行
///
</summary>
///
<param
name="sqlStr">SQL语句</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>返回数值当执行成功时候返回true,失败则返回false</returns>
public
bool
ExecuteNonQury(string
sqlStr,
string
file)
{
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
int
result
=
cmd.ExecuteNonQuery();
if
(result
==
-1
|
result
==
0)
{
cmd.Dispose();
Close();
return
false;
}
else
{
cmd.Dispose();
Close();
return
true;
}
///
<summary>
///
执行数据库查询
///
</summary>
///
<param
name="sqlStr">查询语句</param>
///
<param
name="tableName">填充数据集表格的名称</param>
///
<param
name="file">数据库所在路径</param>
///
<returns>查询的数据集</returns>
public
DataSet
GetDataSet(string
sqlStr,
string
file)
{
DataSet
ds
=
new
DataSet();
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
OleDbDataAdapter
dataAdapter
=
new
OleDbDataAdapter(cmd);
dataAdapter.Fill(ds);
cmd.Dispose();
Close();
dataAdapter.Dispose();
return
ds;
}
///
<summary>
///
生成一个数据读取器OleDbDataReader并返回该OleDbDataReader
///
</summary>
///
<param
name="sqlStr">数据库查询语句</param>
///
<returns>返回一个DataReader对象</returns>
public
OleDbDataReader
GetReader(string
sqlStr,
string
file)
{
OleDbCommand
cmd
=
CreateCommand(sqlStr,
file);
OleDbDataReader
reader
=
cmd.ExecuteReader(CommandBehavior.CloseConnection);
//CommadnBehavior.CloseConnection是将于DataReader的数据库链接关联起来
//当关闭DataReader对象时候也自动关闭链接
return
reader;
}
///
<summary>
///
关闭数据库
///
</summary>
public
void
Close()
{
if
(con
!=
null)
con.Close();
con
=
null;
}
传进来的路径是带上Access数据库名的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
快又稳
2024-10-28 广告
2024-10-28 广告
数据库服务器作为广州快又稳网络科技有限公司的核心基础设施之一,承载着公司海量数据的存储、处理与访问需求。我们采用高性能、高可用性的服务器架构,确保数据的安全性、完整性和快速响应能力。通过先进的数据库管理系统,优化查询效率,支持复杂业务场景下...
点击进入详情页
本回答由快又稳提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询