连接数据库和相关数据库操作——之我的方法 利用OLEDB
2007-08-31 12:32
831 查看
近日,在做一个东东,很多会跟数据库有操作,开始也什么都不懂,遇到很多问题。现在感觉稍有熟悉,把自己的体会和方法拿出来,供大家参考。
首先定义数据源等:
undefinedprivate const string strContent = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " +
"../../Food.mdb";
另外可以自己定义两个与数据库取得连接和关闭连接的函数:
undefinedpublic static OleDbConnection getConnection()
{
OleDbConnection newConnection = new OleDbConnection(strContent);
return newConnection;
}
public static void closeConnection(OleDbConnection conn)
{
if (conn != null)
{
conn.Close();
}
}
这样就便于操作,而且也比较清晰。(以上的定义都位于DBAccess类)
现在我们可以定义具体的数据库操作函数了。
如果是不用从数据库中取出数据的,而只是把数据存入数据库中,由于在很大程度上有很大一部分代码是重复使用的,所以,我选择定义另一个数据库操作函数exeNonQuerySQL(string strCommand):
undefinedprivate Boolean exeNonQuerySQL(string strCommand)
{
conn = DBAccess.getConnection();
if (conn != null)
{
try
{
conn.Open();
OleDbCommand cmd = new OleDbCommand(strCommand, conn);
cmd.ExecuteNonQuery();
return true;
}
catch (Exception e)
{
return false;
}
finally
{
conn.Close();
}
}
else
{
return false;
}
}
这里,我举一个简单的例子:delete
undefinedpublic Boolean deleteDishByName(string name)
{
string strCommand = "delete from menu where dishName = '" + name + "'";
return exeNonQuerySQL(strCommand);
}
另外,如果涉及到,从数据库中取出数据,则可以这样子:
undefinedpublic Dish getDishbyName(string str)
{
Dish dish = null;
string strCommand = "select comboID, dishName, price from menu where menu.dishName = '"+str+"'";
conn = DBAccess.getConnection();
if (conn != null)
{
try
{
conn.Open();
OleDbCommand cmd = new OleDbCommand(strCommand, conn);
OleDbDataReader reader;
reader = cmd.ExecuteReader();
if (reader.HasRows)
{
dish = new Dish();
reader.Read();
dish.Id = Int32.Parse(reader["comboID"].ToString());
dish.Name = reader["dishName"].ToString();
dish.Price = Decimal.Parse(reader["price"].ToString());
}
}catch(Exception e)
{
MessageBox.Show(e.Message);
}
finally
{
DBAccess.closeConnection(conn);
}
}
以上是我个人愚见! 大家多多指正!
首先定义数据源等:
undefinedprivate const string strContent = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " +
"../../Food.mdb";
另外可以自己定义两个与数据库取得连接和关闭连接的函数:
undefinedpublic static OleDbConnection getConnection()
{
OleDbConnection newConnection = new OleDbConnection(strContent);
return newConnection;
}
public static void closeConnection(OleDbConnection conn)
{
if (conn != null)
{
conn.Close();
}
}
这样就便于操作,而且也比较清晰。(以上的定义都位于DBAccess类)
现在我们可以定义具体的数据库操作函数了。
如果是不用从数据库中取出数据的,而只是把数据存入数据库中,由于在很大程度上有很大一部分代码是重复使用的,所以,我选择定义另一个数据库操作函数exeNonQuerySQL(string strCommand):
undefinedprivate Boolean exeNonQuerySQL(string strCommand)
{
conn = DBAccess.getConnection();
if (conn != null)
{
try
{
conn.Open();
OleDbCommand cmd = new OleDbCommand(strCommand, conn);
cmd.ExecuteNonQuery();
return true;
}
catch (Exception e)
{
return false;
}
finally
{
conn.Close();
}
}
else
{
return false;
}
}
这里,我举一个简单的例子:delete
undefinedpublic Boolean deleteDishByName(string name)
{
string strCommand = "delete from menu where dishName = '" + name + "'";
return exeNonQuerySQL(strCommand);
}
另外,如果涉及到,从数据库中取出数据,则可以这样子:
undefinedpublic Dish getDishbyName(string str)
{
Dish dish = null;
string strCommand = "select comboID, dishName, price from menu where menu.dishName = '"+str+"'";
conn = DBAccess.getConnection();
if (conn != null)
{
try
{
conn.Open();
OleDbCommand cmd = new OleDbCommand(strCommand, conn);
OleDbDataReader reader;
reader = cmd.ExecuteReader();
if (reader.HasRows)
{
dish = new Dish();
reader.Read();
dish.Id = Int32.Parse(reader["comboID"].ToString());
dish.Name = reader["dishName"].ToString();
dish.Price = Decimal.Parse(reader["price"].ToString());
}
}catch(Exception e)
{
MessageBox.Show(e.Message);
}
finally
{
DBAccess.closeConnection(conn);
}
}
以上是我个人愚见! 大家多多指正!
相关文章推荐
- 利用魔术方法__call模拟数据库连贯操作
- C#利用ODP.net免安装Oracle Client连接数据库方法
- ASP常用数据库连接及操作的方法和技巧
- PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
- C#使用ODBC与OLEDB连接数据库的方法示例
- 利用Rsyslog集中收集系统日志和用户操作记录以及相关处理方法 推荐
- Eclipse下连接 操作数据库的方法
- 连接数据库方法,可重复利用
- Delphi 利用 SybaseOleDBProvider 连接 SYBASE 数据库
- 利用OleDb的GetOLEDBSchemaTable方法得到数据库架构信息-.NET教程,数据库应用
- ASP常用数据库连接及操作的方法和技巧
- python利用MySQLdb模块进行数据库的连接实现增查操作
- MongoDB3.2中与DB数据库操作相关常用方法介绍
- php连接数据库的相关操作
- 利用itext操作pdf从数据库导出大量数据--创建PDF相关(二)
- Druid连接数据库神器,相关连接数据库方法
- 以前实习期间写的一段mfc编程,对数据库和xml格式文档的相关操作 主要相关代码 之一连接数据库
- 相关的连接与操纵数据库的编程方法之ADO连接access数据库
- HTML提交表单用户选择的头像如何利用<select>标签提交到PHP并连接数据库进行存读操作
- 利用jdbc连接 对数据库的基本操作