操作Access数据库类
using System.Data;
using System.Data.OleDb;
using System.Web.UI;
using System.Web.Mail;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
public class MdbClass
{
protected OleDbConnection Connection;
protected string connectionstring;
public MdbClass()
{
connectionstring ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["connmdbstring"].Trim()); //数据库名称
Connection = new OleDbConnection(connectionstring);
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="connstring"></param>
public MdbClass(string connstring)
{
connectionstring = connstring;
Connection = new OleDbConnection(connectionstring);
}
public static string DbDataFile()
{
return System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["connString"].Trim()); //数据库名称
}
/*执行返回结果和不返回结果的存储过程方法*/
/// <summary>
/// 根据存储过程名称和参数生成对应的SQL命令对象
/// </summary>
/// <param name="storedProcName">存储过程名</param>
/// <param name="parameters">存储过程参数</param>
/// <returns></returns>
private OleDbCommand BuilderQueryCommand(string commondText, OleDbParameter[] parameters)
{
OleDbCommand command = new OleDbCommand();
command.Connection = this.Connection;
command.CommandText = commondText.Trim();
if (parameters != null)
{
foreach (OleDbParameter p in parameters)
{
command.Parameters.Add(p);
}
}
return command;
}
/// <summary>
/// 返回结果
/// </summary>
/// <param name="commondText"></param>
/// <param name="parameters"></param>
/// <returns></returns>
public OleDbDataReader GetOleDbDataReader(string commondText, OleDbParameter[] parameters)
{
OleDbDataReader reader;
OleDbCommand cmd = BuilderQueryCommand(commondText, parameters);
Connection.Close();
Connection.Open();
reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return reader;
}
/// <summary>
/// 返回object,返回首行首列
/// </summary>
/// <param name="commondText"></param>
/// <param name="parameters"></param>
/// <returns></returns>
public object GetObjectByRunSql(string commondText, OleDbParameter[] parameters)
{
object obj = null;
OleDbCommand cmd = BuilderQueryCommand(commondText, parameters);
try
{
Connection.Open();
obj = cmd.ExecuteScalar();
Connection.Close();
return obj;
}
catch
{
Connection.Close();
return obj;
}
finally
{
Connection.Close();
}
}
/// <summary>
/// 不返回结果
/// </summary>
/// <param name="commondText"></param>
/// <param name="parameters"></param>
/// <param name="effect"></param>
/// <returns></returns>
public int GetEffectedByRunSql(string commondText, OleDbParameter[] parameters)
{
int effect = 0;
try
{
OleDbCommand cmd = BuilderQueryCommand(commondText, parameters);
Connection.Open();
effect = cmd.ExecuteNonQuery();
Connection.Close();
return effect;
}
catch
{
Connection.Close();
return effect;
}
finally
{
Connection.Close();
}
}
/// <summary>
/// 返回DataSet
/// </summary>
/// <param name="commondText">sql语句</param>
/// <param name="parameters">参数</param>
/// <param name="tableName">表名</param>
/// <returns></returns>
public DataSet GetDataSet(string commondText, OleDbParameter[] parameters, string tableName)
{
try
{
DataSet ds = new DataSet();
Connection.Open();
OleDbDataAdapter myDa = new OleDbDataAdapter();
myDa.SelectCommand = BuilderQueryCommand(commondText, parameters);
myDa.Fill(ds, tableName);
return ds;
}
catch
{
Connection.Close();
return null;
}
finally
{
Connection.Close();
}
}
/// <summary>
/// 自定义分页
/// </summary>
/// <param name="commondText"></param>
/// <param name="parameters"></param>
/// <param name="start">开始记录</param>
/// <param name="maxRecord">记录数</param>
/// <param name="tableName"></param>
/// <returns></returns>
public DataSet GetDataSet(string commondText, OleDbParameter[] parameters, int start, int maxRecord, string tableName)
{
try
{
DataSet ds = new DataSet();
Connection.Open();
OleDbDataAdapter myDa = new OleDbDataAdapter();
myDa.SelectCommand = BuilderQueryCommand(commondText, parameters);
myDa.Fill(ds, start, maxRecord, tableName);
return ds;
}
catch
{
Connection.Close();
return null;
}
finally
{
Connection.Close();
}
}
/// <summary>
/// 删除ID号的记录
/// </summary>
/// <param name="id"></param>
/// <param name="commondText"></param>
/// <returns></returns>
public bool DeleteByID(int id, string paraID,string commondText)
{
OleDbParameter[] p ={ new OleDbParameter(paraID, OleDbType.Integer) };
p[0].Value = id;
return (this.GetEffectedByRunSql(commondText, p)>0);
}
/// <summary>
/// 对str进行加密
/// </summary>
/// <param name="str">要加密的字符串</param>
/// <param name="format">要使用的哈希算法:md5或sha1</param>
/// <returns></returns>
public string Encrypt(string str, string format)
{
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str, format);
}
public void ItemDataBount(System.Web.UI.WebControls.DataGrid dg, string del)
{
for (int i = 0; i < dg.Items.Count; i++)
{
System.Web.UI.WebControls.LinkButton lbtn = (System.Web.UI.WebControls.LinkButton)dg.Items[i].FindControl(del);
if (lbtn != null)
{
lbtn.Attributes.Add("onclick", "javascript:return confirm('确定删除此项吗?');");
}
}
}
public void DropdowListBound(System.Web.UI.WebControls.DropDownList ddl, System.Data.DataView dv, string valueField, string textField)
{
ddl.DataSource = dv;
ddl.DataValueField = valueField;
ddl.DataTextField = textField;
ddl.DataBind();
}
public void DataBound(System.Web.UI.WebControls.DataGrid dg, System.Data.DataView dv)
{
dg.DataSource = dv;
dg.DataBind();
}
public void DataBound(System.Web.UI.WebControls.Repeater rpt, System.Data.DataView dv)
{
rpt.DataSource = dv;
rpt.DataBind();
}
public void DataBound(System.Web.UI.WebControls.DataList dl, System.Data.DataView dv)
{
dl.DataSource = dv;
dl.DataBind();
}
/// <summary>
/// 全选,全不选;用法:js.BoundCheck(this.dgtopic,"chk","chkall",out str,out function);
/// if(!Page.IsClientScriptBlockRegistered(function)){Page.RegisterClientScriptBlock(function,str);}
/// </summary>
/// <param name="dg">datagrid 控件</param>
/// <param name="chk"></param>
/// <param name="dgchkall">全选控件</param>
/// <param name="regScript"></param>
/// <param name="function"></param>
public void BoundCheck(System.Web.UI.WebControls.DataGrid dg, string chk, string dgchkall, out string regScript, out string function)
{
regScript = "";
System.Text.StringBuilder strScript = new System.Text.StringBuilder();
if (dg.Controls.Count > 0)
{
foreach (DataGridItem item in dg.Controls[0].Controls)
{
if (item.ItemType == ListItemType.Header)
{
CheckBox chkAll = (CheckBox)item.FindControl(dgchkall);
if (chkAll != null)
{
strScript = new System.Text.StringBuilder("<script language='javascript'> \n");
strScript.Append(" function checkStatus() { \n");
strScript.Append(" var bAll = true; \n");
strScript.Append(" bAll = document.all('" + chkAll.ClientID + "').checked; \n");
for (int i = 0; i < dg.Items.Count; i++)
{
CheckBox chk1 = (CheckBox)dg.Items[i].FindControl(chk);
if (chk1 != null)
{
strScript.Append(" document.all('" + dg.Items[i].FindControl(chk).ClientID + "').checked = bAll; \n");
}
}
strScript.Append(" } \n");
strScript.Append("</script> \n");
chkAll.Attributes.Add("onclick", "checkStatus()");
}
}
}
}
function = "checkStatus";
regScript = strScript.ToString();
}
public string GetFileName()
{
return System.DateTime.Now.Year.ToString() + System.DateTime.Now.Month.ToString() + System.DateTime.Now.Day.ToString() + System.DateTime.Now.Hour.ToString() + System.DateTime.Now.Minute.ToString() + System.DateTime.Now.Second.ToString() + System.DateTime.Now.Millisecond.ToString();
}
public string GetLastName(string fileName)
{
return fileName.Substring(fileName.Length - 4);
}
/// <summary>
/// 上传文件
/// </summary>
/// <param name="f"></param>
/// <param name="dir">目录</param>
/// <param name="filePath">文件路径</param>
/// <returns></returns>
public bool UpLoadFile(System.Web.UI.HtmlControls.HtmlInputFile f, string dir, out string filePath, out string info,out int length)
{
length = 0;
info = "";
filePath = "";
try
{
if (f.PostedFile != null && f.PostedFile.FileName.Trim().Length > 0)
{
string strlast = GetLastName(f.PostedFile.FileName.Trim());
string filename = GetFileName() + strlast;
filePath = dir + "/" + filename;
if (!File.Exists(filePath))
{
f.PostedFile.SaveAs(System.Web.HttpContext.Current.Server.MapPath(filePath));
length = f.PostedFile.ContentLength;
return true;
}
else
{
info = "file is exist!";
return false;
}
}
else
{
info = "please select file!";
return false;
}
}
catch
{
info = "Exception";
return false;
}
}
public string ServerFile(string strpath)
{
return System.Web.HttpContext.Current.Server.MapPath(strpath);
}
public string HtmlDeCode(string str)
{
return System.Web.HttpContext.Current.Server.HtmlDecode(str);
}
public string HtmlEnCode(string str)
{
return System.Web.HttpContext.Current.Server.HtmlEncode(str);
}
public string UrlDeCode(string str)
{
return System.Web.HttpContext.Current.Server.UrlDecode(str);
}
public string UrlEnCode(string str)
{
return System.Web.HttpContext.Current.Server.UrlEncode(str);
}

浙公网安备 33010602011771号