PDA

View Full Version : سوال: مشکل در نوشتن command



hamideh_m
شنبه 05 تیر 1389, 13:43 عصر
سلام
من وقتی میخوام از توابع sql مثل sum(),count(), استفاده کنم چون تو vb.net دستورات باید داخل کوتیشن گذاشت تابع رو رشته میگیره واجرا نمیکنه و خطا میگیره چه جوری میشه از توابع sql و دستورات select متداخل تو command برای اتصال استفاده کرد:متفکر::متفکر::متفکر::متف ر::متفکر:

Open-Source
شنبه 05 تیر 1389, 16:12 عصر
سلام
من وقتی میخوام از توابع sql مثل sum(),count(), استفاده کنم چون تو vb.net دستورات باید داخل کوتیشن گذاشت تابع رو رشته میگیره واجرا نمیکنه و خطا میگیره چه جوری میشه از توابع sql و دستورات select متداخل تو command برای اتصال استفاده کرد:متفکر::متفکر::متفکر::متف ر::متفکر:

اون قسمت قرمز رنگ رو توضیح بده.
من نفهمیدم که چیکار میکنی.


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

command.CommandText = "SELECT COUNT(*) FROM Table1"
Dim i As Int64 = command.ExecuteScalar

hamideh_m
شنبه 05 تیر 1389, 18:31 عصر
آخه من با روش زیر command مینویسم
dim cmdstr as string ="select sum(pardakht) where pardakh>10"
dim cmd as new sqlcommand (cmdstr,con)
cmd.executenonequery()
اینطوری خطا میگیره و باهاش نمیشه select متداخل درست کرد.
بعد کدتون چه جوری نمایش میده

Open-Source
شنبه 05 تیر 1389, 19:20 عصر
دقت نکردی چی شد.
وقتی از توابعی مثل sum , Cunt , ... استفاده میکنی، دیگه نباید command رو بصورت executenonequery اجرا کنی.
باید command رو به صورت ExecuteScalar اجرا کنی .

[یه بار دیگه به کدی که بالا نوشتم نگاه کن، همه چیز رو میفهمی]