操作Access数据库类的 部分代码
操作Access数据库类的 部分代码
调用Access数据库操作类的部分代码:
/***构造查询***/#region/***构造查询***/
/**//// <summary>
/// 构造查询语句
/// </summary>
/// <param name="tableName">表名</param>
/// <param name="parameters">查询条件</param>
/// <returns>查询语句</returns>
public string getStr(string tableName,string parameters)
{
StringBuilder bStr=new StringBuilder();
bStr.Append("SELECT 列名 FROM ");
bStr.Append(tableName);
bStr.Append(" WHERE sort='");
bStr.Append(parameters);
bStr.Append("'");
this.strSql=bStr.ToString();
return strSql;
}
#endregion
/***提取数组***/#region/***提取数组***/
/**//// <summary>
/// 从数据库中提取字段数据暂放入string[]中。
/// </summary>
/// <returns>字段数据数组</returns>
public string[] getTitleStrings()
{
string[] strTitle=null;
try
{
//查询数据库
DataSet myDataSet=GetDataSet(this.mdbFullName,this.strSql);
DataTable Dtab =myDataSet.Tables[0];
int Row=Dtab.Rows.Count;
if(Row>0)
{
strTitle=new string[Row];
for(int i=0;i<Row;i++)
{
strTitle[i]=Dtab.Rows[i][0].ToString();
MessageBox.Show(strTitle[i].ToString());
}
}
else
{
MessageBox.Show(this,"查询到0条记录。","提示信息",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return strTitle;
}
#endregion
/***查询字段***/#region/***查询字段***/
/**//// <summary>
/// 查询数据库*表中字段数据,返回DataSet
/// </summary>
/// <param name="dbFullName">数据库全路径</param>
/// <param name="strSql">查询语句</param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string dbFullName,string strSql)
{
DataSet dataset=null;
try
{
//数据库操作类
DatabaseOp DataOp=new DatabaseOp(dbFullName);
dataset=DataOp.GetDataSet(strSql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return dataset;
}
#endregion
/***检查##***/#region /***检查##***/
/**//// <summary>
/// 查询数据库 ** 表中是否已经存在 name的##名称
/// </summary>
/// <param name="namestr">##名称</param>
/// <returns>查询结果</returns>
private int CheckTNameIsExit(string namestr)
{
DatabaseOp dbop=null;
try
{
int count = -1;
dbop=new DatabaseOp(tablePath);
string strSql=StrCheckName(TitleTableName,namestr);
object obj = dbop.GetFirstValue(strSql);
if (obj!=null)
{
count = System.Convert.ToInt32(obj);
}
return count;
}
catch(Exception ex)
{
throw ex;
}
finally
{
if (dbop!=null)
{
dbop.Close();
}
}
}
/**//// <summary>
/// 检查表##中 namestr##名称 是否已经存在
/// </summary>
/// <param name="tableName">表名</param>
/// <param name="namestr">用户输入的##名称</param>
/// <returns></returns>
private string StrCheckName(string tableName,string namestr)
{
try
{
string sort=ChangeSortByTableName(); //类别转换 like works --> A , sales -->B
StringBuilder sqlStr=new StringBuilder();
sqlStr.Append( "select COUNT(*) ");
sqlStr.Append(" from ").Append(tableName);
sqlStr.Append(" where " ).Append(tableName);
sqlStr.Append("_Name");
sqlStr.Append("='").Append(namestr);
sqlStr.Append(" ' and ");
sqlStr.Append(tableName);
sqlStr.Append("_SORT like'%");
sqlStr.Append(sort);
sqlStr.Append("%'");
return sqlStr.ToString();
}
catch (Exception err)
{
throw new Exception(err.Message);
}
}
#endregion
/**//// <summary>
/// 构造查询语句
/// </summary>
/// <param name="tableName">表名</param>
/// <param name="parameters">查询条件</param>
/// <returns>查询语句</returns>
public string getStr(string tableName,string parameters)
{
StringBuilder bStr=new StringBuilder();
bStr.Append("SELECT 列名 FROM ");
bStr.Append(tableName);
bStr.Append(" WHERE sort='");
bStr.Append(parameters);
bStr.Append("'");
this.strSql=bStr.ToString();
return strSql;
}
#endregion
/***提取数组***/#region/***提取数组***/
/**//// <summary>
/// 从数据库中提取字段数据暂放入string[]中。
/// </summary>
/// <returns>字段数据数组</returns>
public string[] getTitleStrings()
{
string[] strTitle=null;
try
{
//查询数据库
DataSet myDataSet=GetDataSet(this.mdbFullName,this.strSql);
DataTable Dtab =myDataSet.Tables[0];
int Row=Dtab.Rows.Count;
if(Row>0)
{
strTitle=new string[Row];
for(int i=0;i<Row;i++)
{
strTitle[i]=Dtab.Rows[i][0].ToString();
MessageBox.Show(strTitle[i].ToString());
}
}
else
{
MessageBox.Show(this,"查询到0条记录。","提示信息",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return strTitle;
}
#endregion
/***查询字段***/#region/***查询字段***/
/**//// <summary>
/// 查询数据库*表中字段数据,返回DataSet
/// </summary>
/// <param name="dbFullName">数据库全路径</param>
/// <param name="strSql">查询语句</param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string dbFullName,string strSql)
{
DataSet dataset=null;
try
{
//数据库操作类
DatabaseOp DataOp=new DatabaseOp(dbFullName);
dataset=DataOp.GetDataSet(strSql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return dataset;
}
#endregion
/***检查##***/#region /***检查##***/
/**//// <summary>
/// 查询数据库 ** 表中是否已经存在 name的##名称
/// </summary>
/// <param name="namestr">##名称</param>
/// <returns>查询结果</returns>
private int CheckTNameIsExit(string namestr)
{
DatabaseOp dbop=null;
try
{
int count = -1;
dbop=new DatabaseOp(tablePath);
string strSql=StrCheckName(TitleTableName,namestr);
object obj = dbop.GetFirstValue(strSql);
if (obj!=null)
{
count = System.Convert.ToInt32(obj);
}
return count;
}
catch(Exception ex)
{
throw ex;
}
finally
{
if (dbop!=null)
{
dbop.Close();
}
}
}
/**//// <summary>
/// 检查表##中 namestr##名称 是否已经存在
/// </summary>
/// <param name="tableName">表名</param>
/// <param name="namestr">用户输入的##名称</param>
/// <returns></returns>
private string StrCheckName(string tableName,string namestr)
{
try
{
string sort=ChangeSortByTableName(); //类别转换 like works --> A , sales -->B
StringBuilder sqlStr=new StringBuilder();
sqlStr.Append( "select COUNT(*) ");
sqlStr.Append(" from ").Append(tableName);
sqlStr.Append(" where " ).Append(tableName);
sqlStr.Append("_Name");
sqlStr.Append("='").Append(namestr);
sqlStr.Append(" ' and ");
sqlStr.Append(tableName);
sqlStr.Append("_SORT like'%");
sqlStr.Append(sort);
sqlStr.Append("%'");
return sqlStr.ToString();
}
catch (Exception err)
{
throw new Exception(err.Message);
}
}
#endregion