http://www.shehui001.com/StudyWeb/CSharp/htm/200989/129.htmusing System;
using System.Collections.Generic;
using System.Text;
using System.Data.OleDb;
using System.Data;
using System.IO;namespace Core.DBUtility
{
    public class AccessClient
    {
        static string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["Conn"].ConnectionString;
        public AccessClient()
        {        }
        public AccessClient(string path)
        {
            connectionString = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + path + @"\db.mdb";
        }
        /// <summary>
        /// 执行SQL语句,返回受影响的行数
        /// </summary>
        /// <param name="cmdText">SQL语句</param>
        /// <returns>受影响的行数</returns>
        public static int ExecuteNonQuery(string cmdText)
        {
            OleDbCommand cmd = new OleDbCommand();
            
            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(cmd, conn, CommandType.Text, cmdText, null);
                int val = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return val > 0 ? val : 0;
            }
        }
        /// <summary>
        ///  执行SQL语句,返回OleDbDataReader
        /// </summary>
        /// <param name="cmdText">SQL语句</param>
        /// <returns>OleDbDataReader对象</returns>
        public static OleDbDataReader ExecuteReader(string cmdText)
        {
            OleDbCommand cmd = new OleDbCommand();
            OleDbConnection conn = new OleDbConnection(connectionString);
            try
            {
                PrepareCommand(cmd, conn, CommandType.Text, cmdText, null);
                OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                cmd.Parameters.Clear();
                return rdr;
            }
            catch
            {
                conn.Close();
                throw;
            }
        }
        /// <summary>
        /// 执行SQL语句,返回结果集第一行第一列
        /// </summary>
        /// <param name="cmdText">SQL语句</param>
        /// <returns>结果集第一行第一列</returns>
        public static object ExecuteScalar(string cmdText)
        {
            OleDbCommand cmd = new OleDbCommand();            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(cmd, conn, CommandType.Text, cmdText, null);
                object val = cmd.ExecuteScalar();
                cmd.Parameters.Clear();
                return val;
            }
        }
        /// <summary>
        /// 执行SQL语句,返回DataTable
        /// </summary>
        /// <param name="cmdText">SQL语句</param>
        /// <returns>DataTable</returns>
        public static DataTable ExecuteDataTable(string cmdText)
        {
            OleDbCommand comm = new OleDbCommand();
            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(comm, conn, CommandType.Text, cmdText, null);
                OleDbDataAdapter adapter = new OleDbDataAdapter(comm);
                DataSet ds = new DataSet();
                adapter.Fill(ds, "temp");
                return ds.Tables["temp"];
            }
        }
                #region ExecuteSQL Method
        public static int ExecuteNonQuery(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(cmd, conn, cmdType, cmdText, commandParameters);
                int val = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return val;
            }
        }        public static OleDbDataReader ExecuteReader(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();
            OleDbConnection conn = new OleDbConnection(connectionString);
            try
            {
                PrepareCommand(cmd, conn, cmdType, cmdText, commandParameters);
                OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                cmd.Parameters.Clear();
                return rdr;
            }
            catch
            {
                conn.Close();
                throw;
            }
        }        public static object ExecuteScalar(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();            using (OleDbConnection connection = new OleDbConnection(connectionString))
            {
                PrepareCommand(cmd, connection, cmdType, cmdText, commandParameters);
                object val = cmd.ExecuteScalar();
                cmd.Parameters.Clear();
                return val;
            }
        }        public static DataTable ExecuteDataTable(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand comm = new OleDbCommand();
            
            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(comm, conn, cmdType, cmdText, commandParameters);
                OleDbDataAdapter adapter = new OleDbDataAdapter(comm);
                DataSet ds = new DataSet();
                adapter.Fill(ds, "temp");
                return ds.Tables["temp"];
            }
        }        private static void PrepareCommand(OleDbCommand cmd, OleDbConnection conn, CommandType cmdType, string cmdText,OleDbParameter[] cmdParms)
        {
            if (conn.State != ConnectionState.Open)
                conn.Open();
            cmd.Connection = conn;
            cmd.CommandText = cmdText;
            cmd.CommandType = cmdType;            if (cmdParms != null)
            {
                foreach (OleDbParameter parm in cmdParms)
                    cmd.Parameters.Add(parm);
            }
        }
        #endregion
    }
}

解决方案 »

  1.   

    UPDATE TABLENAME SET FIELDNAME=@FIELDNAMEVALUE WHEREEXPRESS
      

  2.   

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using DataSetManagerTableAdapters;
    using System.Data.SqlClient;public partial class modifystu : System.Web.UI.Page
    {
        UsersTableAdapter userAdapter = new UsersTableAdapter();
        DepartmentTableAdapter departAdapter = new DepartmentTableAdapter();
        ClassTableAdapter classAdapter = new ClassTableAdapter();
        SpecialTableAdapter specAdapter = new SpecialTableAdapter();
        DataSetManager.DepartmentDataTable departTable = new DataSetManager.DepartmentDataTable();
        DataSetManager.ClassDataTable classTable = new DataSetManager.ClassDataTable();
        DataSetManager.SpecialDataTable speciTable = new DataSetManager.SpecialDataTable();
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (Session["level"] == null || Convert.ToInt32(Session["level"].ToString()) < 2)
                {
                    Response.Redirect("login.aspx");
                }
            }
            catch (Exception ex)
            {
                Response.Redirect("login.aspx");
            }
        }
        protected void btnCancel_Click(object sender, EventArgs e)
        {
            txtEmail.Text = "";
            txtName.Text = "";
            txtRoomNum.Text = "";
            txtStuId.Text = "";
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.txtStuId.Text.Trim() == "")
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "<script>window.alert('不存在该学生!')</script>");
                    return;
                }
                else
                {
                    int departNum = Convert.ToInt32(ddlDepart.SelectedItem.Value);                SqlConnection conn = new SqlConnection();
                    conn.ConnectionString = "Server=(local);uid=sa;pwd=;database=m_manager.mdb;";
                    conn.Open();                string sql = "insert into Users(room,email)values('" + this.txtRoomNum.Text + "','" + this.txtEmail.Text + "')where user_stuid='" + this.txtStuId.Text + "'";
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    SqlCommand command = new SqlCommand();
                    int flag = cmd.ExecuteNonQuery();
                    if (flag == 0)
                    {
                        this.TextBox1.Text = "修改失败!";
                    }
                    else
                    {
                        Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "<script>window.alert('操作成功!')</script>");
                    }
                }
            }
            catch (Exception ex)
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "<script>window.alert('操作失败!')</script>");
            }
        }
    }
    运行的时候总是显示操作失败!!!
    没有将修改后的数据添加到数据库??
    怎么修正?
    请多指教