简体   繁体   English

C#:ExecuteNonQuery()异常

[英]C#: ExecuteNonQuery() Exception

Actually i have a page to update profile information. 实际上我有一个页面来更新个人资料信息。 i Have a code like this 我有这样的代码

Controller 调节器

      if (ModelState.IsValid)
        {
            string UpdateClinicName = null;
            string UpdateDrname = null;
            string UpdateClinicFullAddress = null;
            string UpdateClinicFaxNo = null;
            string UpdateClinicPhone = null;
            string UpdateMOHRegistration = null;
            string UpdateClinicEmail = null;
            string UpdateContactID = null;
            string UpdateHospitalRegistrationNo = null;

                // Getting GroupID
            string GroupIDdrinin = null;
            GroupIDdrinin = Profiledatainfo.GroupID;

                // Getting ContactID
            UpdateContactID = Profiledatainfo.CContactID;

               // Getting ClinicName 
            UpdateClinicName = Profiledatainfo.Clinicname;

               // Getting Dr name 
            UpdateDrname = Profiledatainfo.Doctorname;

              // Getting ClinicFullAddress
            UpdateClinicFullAddress = Profiledatainfo.ClinicFullAddress;

              // Getting ClinicPhone 
            UpdateClinicPhone = Profiledatainfo.ClinicPhone;

              // Getting MOHRegistrationNo
            UpdateMOHRegistration = Profiledatainfo.MOHRegistrationNo;


              // Getting FaxNo
            UpdateClinicFaxNo = Profiledatainfo.ClinicFaxNo;

              // Getting Clinic Mail 
            UpdateClinicEmail = Profiledatainfo.ClinicBusinessEmail;

              // Getting HospitalRegistrationNo

            UpdateHospitalRegistrationNo = Profiledatainfo.RegistrationNo;

            ClinicProfileTimingModelDAL UpdateProfileInfo = new ClinicProfileTimingModelDAL();

              // Updating ProfileInformation 
            int Upstatus = UpdateProfileInfo.UpdateClinicProfile(UpdateContactID, UpdateClinicPhone, UpdateClinicFaxNo, UpdateClinicFullAddress, UpdateClinicEmail);
            int Uregistatus = UpdateProfileInfo.UpdateClinicRegistration(GroupIDdrinin, UpdateMOHRegistration, UpdateHospitalRegistrationNo);

        }

Model 模型

  public class ClinicProfileTimingModelDAL
{

    public int UpdateClinicProfile(string ContactID, string ClinicPhone, string ClinicFaxNo, string ClinicAddress, string ClinicBusiessMail)
    {

        SqlConnection myConnection = new SqlConnection("DataBase Conn details");
        myConnection.Open();
        SqlCommand sqlCmd = new SqlCommand();
        sqlCmd.CommandType = CommandType.Text;
        sqlCmd.CommandText = "Execute SpClinicDetAmendMVC " + ContactID + ",'" + ClinicPhone + "','" + ClinicFaxNo + "','" + ClinicAddress + "','" + ClinicBusiessMail + "'";
        //sqlCmd.CommandText = "Select ConfirmVisitID,MemberID,GroupID,RecStatus,CreateUserID,VisitDate from tblConfirmVisit where Cast(VisitDate as Date)='" + Vstdate + "' and CreateUserID="+createuserid+"";


        sqlCmd.Connection = myConnection;
        int Msg = 0;
        Msg = sqlCmd.ExecuteNonQuery();
        myConnection.Close();
        return Msg;

    }

    public int UpdateClinicRegistration(string GroupID, string HospitalResitrationno, string MOHRegistrationNo)
    {

        SqlConnection myConnection = new SqlConnection("DataBase Conn details");
        myConnection.Open();
        SqlCommand sqlCmd = new SqlCommand();
        sqlCmd.CommandType = CommandType.Text;
        sqlCmd.CommandText = "Execute spupdateProfileInfoMVC '" + GroupID + "'," + HospitalResitrationno + "," + MOHRegistrationNo + "";
        sqlCmd.Connection = myConnection;
        int Msg = 0;
        Msg = sqlCmd.ExecuteNonQuery();
        myConnection.Close();
        return Msg;

    }

}

So, when i tried to update the profile information, i have an exception "I am getting an .ExecuteNonQuery() Error. SqlException was unhandled by user code // Incorrect syntax near ','. 因此,当我尝试更新配置文件信息时,我有一个例外“我收到.ExecuteNonQuery()错误。用户代码未处理SqlException //在','附近语法不正确。

So i tried the alternate way in Model section 所以我尝试了模型部分的替代方法

     sqlCmd.CommandText = "Execute spupdateProfileInfoMVC(@Cid, @Cp, @Cfn, @Ca, @Cbm) "
    sqlCmd.CommandText.Parameters.AddWithValue("@Cid", ContactID );
    sqlCmd.CommandText.Parameters.AddWithValue("@Cp", ClinicPhone  );
    sqlCmd.CommandText.Parameters.AddWithValue("@Cfn", ClinicFaxNo);
    sqlCmd.CommandText.Parameters.AddWithValue("@Ca", ClinicAddress  );
    sqlCmd.CommandText.Parameters.AddWithValue("@Cbm", ClinicBusinessMail);
    sqlCmd.CommandText.ExecuteNonQuery();

This alternative way also give same exception. 这种替代方式也给出了相同的例外。 So how to solve this issue. 那么如何解决这个问题呢。 Any help appreciated, Thanks in advance 任何帮助表示感谢,提前致谢

Try this: 尝试这个:

qlCmd.CommandText = "Execute spupdateProfileInfoMVC '" + GroupID +
 "','" + HospitalResitrationno + "','" + MOHRegistrationNo + "'";

Same with: 与:相同:

 sqlCmd.CommandText = "Execute SpClinicDetAmendMVC '" + ContactID + "','" + ClinicPhone + "','" + ClinicFaxNo + "','" + ClinicAddress + "','" + ClinicBusiessMail + "'";

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM