Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当我要更新数据库值时,更改不会影响数据库中的数据_C#_Ms Access 2010 - Fatal编程技术网

C# 当我要更新数据库值时,更改不会影响数据库中的数据

C# 当我要更新数据库值时,更改不会影响数据库中的数据,c#,ms-access-2010,C#,Ms Access 2010,当我尝试更新查询时,请帮助我工作正常,但更改不会影响数据库值。 我正在使用MSAccess2010数据库,并通过C.net对其进行操作 private void update() { try { conn = new OleDbConnection(cs.DBConn); conn.Open(); string cb="update Student_Data set Stud

当我尝试更新查询时,请帮助我工作正常,但更改不会影响数据库值。 我正在使用MSAccess2010数据库,并通过C.net对其进行操作

    private void update()
    {
        try
        {
            conn = new OleDbConnection(cs.DBConn);
            conn.Open();

            string cb="update Student_Data set Student_Name=@s2,Father_Name=@s3,Mother_Name=@s4,DOB=@s5,Standard=@s6,Addmission_For_Batch=@s7,Gender=@8,Joining_Date=@s9,Package_Fees=@s10,Fees_Mode=@s11,School_College_Name=@s12,Address=@s13,Parents_Contact=@s14,Self_Contact=@s15,SMS_Contact=@s16,Email_ID=@s17,Religion=@s18,Caste_Quoto=@s19,Total_Fees=@s20,Prefered_Batch=@s21,Photo=@22 where Addmission_Number=@d1";

            OleDbCommand cmd = new OleDbCommand(cb);
            cmd.Connection = conn;
           cmd.Parameters.Add(new OleDbParameter ("@d1", System.Data.OleDb.OleDbType.VarChar, 15, "Addmission_Number"));
            cmd.Parameters.Add(new OleDbParameter("@s2",System.Data.OleDb.OleDbType.VarChar,40,"Student_Name"));
            cmd.Parameters.Add(new OleDbParameter("@s3", System.Data.OleDb.OleDbType.VarChar, 40, "Father_Name"));
            cmd.Parameters.Add(new OleDbParameter("@s4",System.Data.OleDb.OleDbType.VarChar,40,"Mother_Name"));
            cmd.Parameters.Add(new OleDbParameter("@s5", System.Data.OleDb.OleDbType.DBDate, 15, "DOB"));
            cmd.Parameters.Add(new OleDbParameter("@s6", System.Data.OleDb.OleDbType.VarChar, 20, "Standard"));
            cmd.Parameters.Add(new OleDbParameter("@s7", System.Data.OleDb.OleDbType.VarChar, 20, "Addmission_For_Batch"));
            cmd.Parameters.Add(new OleDbParameter("@s8", System.Data.OleDb.OleDbType.VarChar, 10, "Gender"));
            cmd.Parameters.Add(new OleDbParameter("@s9", System.Data.OleDb.OleDbType.VarChar, 20, "Joining_Date"));
            cmd.Parameters.Add(new OleDbParameter("@s10", System.Data.OleDb.OleDbType.Integer, 10, "Package_Fees"));
            cmd.Parameters.Add(new OleDbParameter("@s11", System.Data.OleDb.OleDbType.VarChar, 15, "Fees_Mode"));
            cmd.Parameters.Add(new OleDbParameter("@s12", System.Data.OleDb.OleDbType.VarChar, 20, "School_College_Name"));
            cmd.Parameters.Add(new OleDbParameter("@s13", System.Data.OleDb.OleDbType.VarChar, 40, "Address"));
            cmd.Parameters.Add(new OleDbParameter("@s14", System.Data.OleDb.OleDbType.VarChar, 15, "Parents_Contact"));
            cmd.Parameters.Add(new OleDbParameter("@s15", System.Data.OleDb.OleDbType.VarChar, 15, "Self_Contact"));
            cmd.Parameters.Add(new OleDbParameter("@s16", System.Data.OleDb.OleDbType.VarChar, 15, "SMS_Contact"));
            cmd.Parameters.Add(new OleDbParameter("@s17", System.Data.OleDb.OleDbType.VarChar, 40, "Email_ID"));
            cmd.Parameters.Add(new OleDbParameter("@s18", System.Data.OleDb.OleDbType.VarChar, 20, "Religion"));
            cmd.Parameters.Add(new OleDbParameter("@s19", System.Data.OleDb.OleDbType.VarChar, 20, "Caste_Quoto"));
            cmd.Parameters.Add(new OleDbParameter("@s20", System.Data.OleDb.OleDbType.VarChar, 20, "Total_Fees"));
            cmd.Parameters.Add(new OleDbParameter("@s21", System.Data.OleDb.OleDbType.VarChar, 20, "Prefered_Batch"));

            cmd.Parameters["@d1"].Value = ScholarNo.Text.Trim();
            cmd.Parameters["@s2"].Value =TxtStudName.Text.Trim();
            cmd.Parameters["@s3"].Value =TxtFathername.Text.Trim();
            cmd.Parameters["@s4"].Value =TxtMotherName.Text.Trim();
            cmd.Parameters["@s5"].Value = DTPDob.Text.Trim();
            cmd.Parameters["@s6"].Value = TxtStandard.Text.Trim();
            cmd.Parameters["@s7"].Value = TxtAdmForBatch.Text.Trim();
            cmd.Parameters["@s8"].Value = CmbGender.Text.Trim();
            cmd.Parameters["@s9"].Value = DTPJoiningdate.Text.Trim();
            cmd.Parameters["@s10"].Value = TxtPackagefees.Text.Trim();
            cmd.Parameters["@s11"].Value = CmbMode.Text.Trim();
            cmd.Parameters["@s12"].Value = TxtSchooclg.Text.Trim();
            cmd.Parameters["@s13"].Value =TxtAddress.Text.Trim();
            cmd.Parameters["@s14"].Value = TxtParentContact.Text.Trim();
            cmd.Parameters["@s15"].Value = TxtSelfcntct.Text.Trim();
            cmd.Parameters["@s16"].Value = TxtSmsCntct.Text.Trim();
            cmd.Parameters["@s17"].Value =TxtEmailID.Text.Trim();
            cmd.Parameters["@s18"].Value =CMBreligion.Text.Trim();
            cmd.Parameters["@s19"].Value = CmbCastqta.Text.Trim();
            cmd.Parameters["@s20"].Value = TxtTotalfees.Text.Trim();
            cmd.Parameters["@s21"].Value = TxtPreferdBatch.Text.Trim();

            ms = new MemoryStream();
            Bitmap bmpImage = new Bitmap(PicBox.Image);

            bmpImage.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);

            byte[] data = ms.GetBuffer();
            OleDbParameter p = new OleDbParameter("@s22", OleDbType.VarBinary);
            p.Value = data;
            cmd.Parameters.Add(p);

            cmd.ExecuteNonQuery();
            MessageBox.Show("Successfully Updated", "Student Record", MessageBoxButtons.OK, MessageBoxIcon.Information);
            BtnViewdtl.Enabled = false;

            conn.Close();


        }

        catch (OleDbException ex)
        {
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        finally
        {
            conn.Close();

        }
    }
OleDbCommand不支持命名参数。实际上它支持,但它不在乎。只关心他们的命令

就我所见,您的参数定义和参数顺序是不同的

例如,您的Student_Name=@s2参数与案例中的@d1参数定义匹配

按照声明命令的方式更改参数添加部分。我还将使用自动处理连接和命令,而不是手动调用Close方法


如果除此之外一切正常,这应该可以解决问题。

名称空间TMS{class ConnectionString{public string DBConn=@Provider=Microsoft.ACE.OLEDB.12.0;数据源=D:\TMS\TMS\TMS_Database.accdb;Persist Security Info=False;;}非常感谢,先生。我按照你的要求修改了代码,现在可以了。谢谢again@MazharShaikh很高兴听到这个消息。