我對C#有點新鮮,不知道我在做什麼錯。試圖找到一個解決方案,但失敗了。提前致謝。我的OleDbCommand參數不能正常工作
當我不使用參數「select * fromΚαρτέλα_Ασθενή」;該表單將得到來自閱讀器的值。換句話說,表單看起來像select命令不起作用。
OleDbCommand cmd = new OleDbCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select * from Καρτέλα_Ασθενή where Κωδ_Ασθενή = @Κωδ_Ασθενή";
cmd.Parameters.AddWithValue("@Κωδ_Ασθενή", MyGlobals.Patient_code);
cmd.Connection = accessdb;
accessdb.Open();
OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
while (dr.Read())
{
txt_patient_code.Text = dr["Κωδ_Ασθενή"].ToString();
txt_Surname.Text = dr["Επώνυμο"].ToString();
txt_Name.Text = dr["Όνομα"].ToString();
txt_date.Text = Convert.ToDateTime(dr["Ημερομηνία_Γέννησης"]).ToShortDateString();
txt_address.Text = dr["Διεύθυνση"].ToString();
txt_area.Text = dr["Περιοχή"].ToString();
txt_phone.Text = dr["Τηλ"].ToString();
txt_fax.Text = dr["Φαξ"].ToString();
txt_insurance.Text = dr["Ασφάλεια"].ToString();
txt_comments.Text = dr["Παρατηρήσεις"].ToString();
txt_history.Text = dr["Ιστορικό"].ToString();
txt_alergies.Text = dr["Αλλεργίες"].ToString();
txt_email.Text = dr["e-mail"].ToString();
}
}
dr.Close();
accessdb.Close();
什麼是不工作? –
有什麼問題? 順便說一句,你不需要if(dr.Read()),while循環已經做到了 –