这是我的代码,它一直告诉表格无效的名称! 我检查连接是否完美 我在sql mngmnt中执行了查询,它也工作得很好 试过dbo.patient和 我仍然得到这个错误
private void button1_Click(object sender, EventArgs e)
{
string sexe_patient="";
cnx conx = new cnx();
string strRequete = "SELECT nom_patient,cin_patient FROM patient";
try
{
//Execution de la requête
myCommand = new SqlCommand(strRequete, cnx.myConnection);
//Lecture des enregistrements à l’aide d’un SqlDataReader
SqlDataReader mySqDataReader = myCommand.ExecuteReader();
while (mySqDataReader.Read())
{
//On teste que le résultat n’est pas NULL afin d’éviter un plantage on moment du cast
if (!(mySqDataReader["nom_patient"].Equals(nom_patient.Text)) && (!mySqDataReader["cin_patient"].Equals(cin_patient.Text)))
{
//récupéré le type de sexe
if (sexe.Equals("femme"))
{
sexe_patient ="femme";
}
else
{ sexe_patient = "homme"; }
string add_patient = "INSERT INTO patient(cd_patient,cin_patient,nom_patient,date_naissance,sexe,adresse,profession,etat_physique) VALUES("+cd_patient.Text+","+cin_patient.Text+","+nom_patient.Text+","+date_naissance+","+sexe_patient+","+adresse.Text+","+profession.Text+","+etat_phy.Text+");";
myCommand = new SqlCommand(add_patient, cnx.myConnection);
MessageBox.Show("Patient has been added successfuly", "Halleljuah!!", MessageBoxButtons.OKCancel);
break;
}
else
{
//alert
MessageBox.Show("Il y a des champs vide", "erreur", MessageBoxButtons.OKCancel);
}
}
}
catch (Exception eMsg1)
{
//En cas d’erreur on affiche le message d’erreur
//alert
MessageBox.Show(eMsg1.Message, "erreur", MessageBoxButtons.OKCancel);
}
finally
{
//Quoiqu’il arrive on ferme proprement la connexion à la base
cnx.myConnection.Close();
}
}
答案 0 :(得分:1)
尝试改变:
string add_patient = "INSERT INTO patient(cd_patient,cin_patient,nom_patient,date_naissance,sexe,adresse,profession,etat_physique) VALUES("+cd_patient.Text+","+cin_patient.Text+","+nom_patient.Text+","+date_naissance+","+sexe_patient+","+adresse.Text+","+profession.Text+","+etat_phy.Text+");"
myCommand = new SqlCommand(add_patient, cnx.myConnection);
使用:
string add_patient = "INSERT INTO patient(cd_patient,cin_patient,nom_patient,date_naissance,sexe,adresse,profession,etat_physique) VALUES(@cd_patient,@cin_patient,@nom_patient,@date_naissance,@sexe_patient,@adresse,@profession,@etat_physique)";
myCommand= new SqlCommand(add_patient, cnx.myConnection);
myCommand.Parameters.AddWithValue("@cd_patient", cd_patient.Text);
myCommand.Parameters.AddWithValue("@cin_patient", cin_patient.Text);
myCommand.Parameters.AddWithValue("@nom_patient", nom_patient.Text);
myCommand.Parameters.AddWithValue("@date_naissance", date_naissance);
myCommand.Parameters.AddWithValue("@sexe_patient", sexe_patient);
myCommand.Parameters.AddWithValue("@adresse", adresse.Text);
myCommand.Parameters.AddWithValue("@profession", profession.Text);
myCommand.Parameters.AddWithValue("@etat_physique", etat_phy.Text);