PDA

View Full Version : تابع ExecuteScalar() چیست؟



forodo
سه شنبه 18 تیر 1392, 14:09 عصر
سلام
می خواستم بدونم تابع
ExecuteScalar()
در ADO.NET چه کاری انجام میده؟
با تشکر

CsharpNevisi
سه شنبه 18 تیر 1392, 14:13 عصر
سلام
می خواستم بدونم تابع
ExecuteScalar()
در ADO.NET چه کاری انجام میده؟
با تشکر

تا اونجا که اطلاعات من قد میده
وقتی شما میخوایی فقط یک مقدار از بانک و نه بیشتر را بخوانی از این دستور استفاده میشه .. !!

sohil_ww
سه شنبه 18 تیر 1392, 14:13 عصر
1 سر به اینجا بزن
msdn (http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar.asp x)

sohil_ww
سه شنبه 18 تیر 1392, 14:14 عصر
تا اونجا که اطلاعات من قد میده
وقتی شما میخوایی فقط یک مقدار از بانک و نه بیشتر را بخوانی از این دستور استفاده میشه .. !!

دقیقا The first column of the first row in the result

forodo
سه شنبه 18 تیر 1392, 14:39 عصر
یعنی فقط اولین سلول رو میاره؟؟؟

CsharpNevisi
سه شنبه 18 تیر 1392, 14:59 عصر
یعنی فقط اولین سلول رو میاره؟؟؟



شما میتونی تو کوئری مشخص کنی که کدوم سلولو بیاره ولی فقط یه مقدار میتونه داشته باشه و اگر مثلا دوتا فیلدو تو سلکت انخاب کنی ارور میده ... !!!
مثلا از بین نام و نام خانوادگی و شماره ... شما میایی نام خانوادگییو انتخاب میکنی که مثلا شمارش 09100000000 است

forodo
سه شنبه 18 تیر 1392, 15:43 عصر
یعنی مثلاً دیگه نیازی به اینطور نوشتن نیست؟

txtDesc.Text = objDataSet.Tables[



"tblPersonal_tblAddedHours"].Rows[0]["DescD"].ToString();

میشه اینطوری نوشت؟

objcommand0.CommandText =

"SELECT number FROM tlbPersonal WHERE (number =" + shomare + ")";

txtDesc.Text = objcommand0.ExecuteScalar();

CsharpNevisi
سه شنبه 18 تیر 1392, 15:52 عصر
objcommand0.CommandText =

'"SELECT number FROM tlbPersonal WHERE (number ='" + shomare + ")";

txtDesc.Text = objcommand0.ExecuteScalar().tostring();
بله ولی اگر برای خواندن اطلاعات از reader استفاده کنی خیلی اسون تر و بهتره .. !!!

forodo
سه شنبه 18 تیر 1392, 16:10 عصر
لطفاً یه مثال از reader بزن.
خیلی ممنون.

CsharpNevisi
سه شنبه 18 تیر 1392, 16:21 عصر
لطفاً یه مثال از reader بزن.
خیلی ممنون.

OleDbCommand MH = new OleDbCommand();
OleDbDataReader Rd;
Form1 HM = new Form1();
MH.Connection = HM.oleDbConnection1;
MH.CommandText = "select * from persian_names order by p_name asc";
HM.oleDbConnection1.Open();
Rd = MH.ExecuteReader();
while (Rd.Read())
{
lisName.Items.Add(Rd[0]);
//lisName.Items.Add(Rd["شماره فیلدی که میخوایی نمایش داده بشه ..... 0 میشه فیلد اول یا ID"]);
}
HM.oleDbConnection1.Close();