PDA

View Full Version : سوال: اتصال به پایگاه داده و چگونگی فهمیدن که فیلد مورد نظر موجود هست یا نه



pooriajojo
پنج شنبه 14 اسفند 1393, 14:09 عصر
سلام من میخوام به پایگاه داده اتصال برقرار کنم و select کنم فیلدی . چی کار کنم که اگه آن فیلد با مقدار که تعیین شده قبلا ذخیره شده یا نه . اگه نه یک پیغام بدهد اگه آره کاری انجام دهد .
این را هم نوشتم ولی جواب نداد .

SqlConnection connection = new SqlConnection();
connection.ConnectionString = @"Data Source=(local);Initial Catalog=khadamat;Integrated Security=True";
SqlCommand command = new SqlCommand("select namep,neshanp,idmeli,daraje,id from personel1 where id='" + txid.Text + "'", connection);
connection.Open();
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
string id = "p";
id = (dr["id"].ToString());
if (id == "p")
{
MessageBox.Show("اطلاعات ساختمان ویرایش شد");
}
else
{
txname.Text = (dr["namep"].ToString());
txneshan.Text = (dr["neshanp"].ToString());
txidmeli.Text = (dr["idmeli"].ToString());
txdaraje.Text = (dr["daraje"].ToString());
}
}
connection.Close();

1000net
پنج شنبه 14 اسفند 1393, 15:10 عصر
سلام من میخوام به پایگاه داده اتصال برقرار کنم و select کنم فیلدی . چی کار کنم که اگه آن فیلد با مقدار که تعیین شده قبلا ذخیره شده یا نه . اگه نه یک پیغام بدهد اگه آره کاری انجام دهد .
این را هم نوشتم ولی جواب نداد .

SqlConnection connection = new SqlConnection();
connection.ConnectionString = @"Data Source=(local);Initial Catalog=khadamat;Integrated Security=True";
SqlCommand command = new SqlCommand("select namep,neshanp,idmeli,daraje,id from personel1 where id='" + txid.Text + "'", connection);
connection.Open();
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
string id = "p";
id = (dr["id"].ToString());
if (id == "p")
{
MessageBox.Show("اطلاعات ساختمان ویرایش شد");
}
else
{
txname.Text = (dr["namep"].ToString());
txneshan.Text = (dr["neshanp"].ToString());
txidmeli.Text = (dr["idmeli"].ToString());
txdaraje.Text = (dr["daraje"].ToString());
}
}
connection.Close();

سلام شما میتونید با استفاده از خط زیر مشکلتون رو حل کنید:


sqlcommand command=new sqlcommand();
command.commandtext="select count(*) from personel1 where id="+txid.text+"";
command.Connection = connection;
result = Convert.ToInt32(command.ExecuteScalar());
if(result!=0)
{
//رکورد تکراری می باشد
}

pooriajojo
پنج شنبه 14 اسفند 1393, 16:36 عصر
آقا این result را نمی شناسه

1000net
جمعه 15 اسفند 1393, 15:34 عصر
آقا این result را نمی شناسه

سلام از نوع int باید تعریف بشه اخه متغییره:

int result;
بالا سر همین دستورات بنویسید.
با تشکر