PDA

View Full Version : سوال: چگونگی ارتباط یک label با بانک اطلاعاتی



leila71
شنبه 19 فروردین 1391, 10:50 صبح
سلام دوستان عزیز
چطور میشه یک label رو با بانک طلاعاتی اس کیو ال ارتباط داد یعنی من یه جدول تو بانک درست کردم که شامل ستونهای زیر است :factor_id,sharh,tedad,gheymat .توی برنامه ام هم یه دیتا گرید گذاشتم که کل اطلاعات جدول رو نشون میده و همین طور دو تا lable گذاشتم می خوام دستور اس کیو ال زیر رو تو lable1 نشون بدم
select sum(gheymat) from factor
و دستور زیر رو تو lable2
select count(tedad) from factor
چه کار کنم خیلی مهمه خواهشا راهنمایی کنید؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟/

Hybrid
شنبه 19 فروردین 1391, 11:18 صبح
سلام ، کدتون باید چیزی شبیه کد زیر باشه ،


DA.SelectCommand = New OleDbCommand()

With DA.SelectCommand
.Connection = my_con
.CommandType = CommandType.Text
.CommandText = "Select sum(p_number),Count(p_Count) from table1"

If .Connection.State <> ConnectionState.Open Then
.Connection.Open()
End If

Dim dr As OleDbDataReader
dr = .ExecuteReader()

If dr.Read Then
Label1.Text = dr(0).ToString()
Label2.Text = dr(1).ToString()
End If

End With


my_con.Close()

*** کد بالا واسه اکسس هست ، واسه sql دستورش هیچ فرقی نمیکنه ،

leila71
شنبه 19 فروردین 1391, 11:29 صبح
سلام ، کدتون باید چیزی شبیه کد زیر باشه ،


DA.SelectCommand = New OleDbCommand()

With DA.SelectCommand
.Connection = my_con
.CommandType = CommandType.Text
.CommandText = "Select sum(p_number),Count(p_Count) from table1"

If .Connection.State <> ConnectionState.Open Then
.Connection.Open()
End If

Dim dr As OleDbDataReader
dr = .ExecuteReader()

If dr.Read Then
Label1.Text = dr(0).ToString()
Label2.Text = dr(1).ToString() یعنی چی؟
End If

End With


my_con.Close()

*** کد بالا واسه اکسس هست ، واسه sql دستورش هیچ فرقی نمیکنه ،

دوست عزیز میشه بیشتر توضیح بدی چون من تازه کار هستم

Hybrid
شنبه 19 فروردین 1391, 11:43 صبح
دوست عزیز میشه بیشتر توضیح بدی چون من تازه کار هستمخط 1 : یک شی از نوع oledbcommand ساختم و به خصیصه Da.selectCommand نسبت دادم تا بتونم اطلاعات رو از داخل بانک بکشم بیرون.

خط 3 : از دستور With استفاده کردم تا در خط های بعدی دیگه Da.selectCommand رو ننویسم و برای دسترسی به اجزاش فقط (.) رو قرار بدم.

خط 4 : اومدم کانکشنی که در برنامه و در پروژم تعریف کردم رو به خصیصه Connection از Da.selectCommand نسبت دادم.

خط 5 :اومدم نوع دستور رو مشخص کردم و گفتم خودم میخوام دستور sql رو بنویسم( CommandText ).

خط 6 :دستور sql مورد نظر رو نوشتم و گفتم مجموع ستون p_number از بانک و تعداد ردیف های ستون p_Count رو واسم Select کن.

خط 8 : گفتم اگه کانکشن پروژه بسته بود بازش کن ( تا بتونم دستورات رو اجرا کنم)

خط 12 : اومدم یک شی از کلاس oledbdataReader درست کردم ( این شی مثلا یک خیابان یک طرفه هست یعنی در هر زمان فقط میتونین یک سطر رو ازش بخونین (در این مثال ما فقط یک سطر داریم و شامل 2 تا ستون یکی مجموع و یکی تعداد)).

خط 13 : دستور رو اجرا میکنم.

خط 14 : میگم اگه سطری وجود داشت مقدار ستون اول یعنی مجموع رو داخل label1 و تعداد رو داخل label2 قرار بده.

خط 23 : کانکشن رو بستم.