PDA

View Full Version : مبتدی: نحوه استفاده از view در سی شارپ



googoli
یک شنبه 02 بهمن 1390, 11:44 صبح
با سلام
من می خوام از Viewهایی که در اس کیوال ساختم در سی استفاده کنم ولی نمی دونم چطور باید این کار رو انجام بدم میشه من رو راهنمایی کنید؟

saeedgharedaghi
یک شنبه 02 بهمن 1390, 11:55 صبح
سلام دوست عزیز کافیه نام view رو تو دستور select بهش بدی
مثل این :
select * from view_student

cherchil_hra
یک شنبه 02 بهمن 1390, 11:59 صبح
cmd.CommandText = "select * from " + ViewName

cmd از نوع SqlCommand هستش

shadi khanum
یک شنبه 02 بهمن 1390, 12:13 عصر
تو C# کار با View دقیقا مثل table، فرق بین view و Table همون هاییه که تو دیتابیس هم هست اگه نه از لحاظ کار باشون تو C# مثل جداول میمونه

googoli
یک شنبه 02 بهمن 1390, 14:27 عصر
خب مزایای استفاده از viewچی هست؟ کاری که با view انجام میدیم دقیقا همون کار رو می تونیم با spهم انجام بدیم

zarrinnegar
یک شنبه 02 بهمن 1390, 14:52 عصر
خب مزایای استفاده از viewچی هست؟ کاری که با view انجام میدیم دقیقا همون کار رو می تونیم با spهم انجام بدیم

از لحاظ خروجی و نتیجه کار یکی هست ولی تفاوت عمده اون چند تاست
1 - view وقتی ساخته میشه یک طراح هم داره که به کاربر کمک میکنه تا بدون اشکال نتیجه ای رو میخواد بگیره ( کد نویسی بلد نباشی میتونی بسازی )
2 - خروجی اصلی یک view بصورت یک Query توسط سیستم قابل درک و شناسایی هست ولی خروجی یک پروسیجر فقط یک لیست هست که ساختارش معلوم نیست این حالت توی Linq کاملا مشخصه و با هم فرق میکنه
3 - توی view نمیشه از ورودی بهش پارامتر پاس داد و نتیجه رو تغییر داد باید با Where با هاش برخورد کنی ولی توی پروسیجر میشه انجام داد
4 - توی view نمیشه از دستوراتی مثل Union و دستورات DDl استفاده کرد ولی توی پروسیجر میشه این کار رو انجام داد
5 - View سریعتر جواب میده تا پروسیجر چون پروسیجر محاسبه انجام میده ولی View محاسبه مثل پروسیجر نداره
6 - درسته View مثل جدول میمونه ولی نمیشه توش Insert , Update , Delete انجام داد مگر اینکه یک View ساده باشه ولی توی پروسیجر میشه هر کاری رو انجام داد بعد لیست رو نمایش داد

googoli
یک شنبه 02 بهمن 1390, 19:31 عصر
با تشکر از اساتید گرامی
آیا Query هم از همین روش فراخوانی viewها هست ؟

crazy_1892
یک شنبه 02 بهمن 1390, 20:08 عصر
آره تقریبا مثل کوئری ها میمونه

googoli
یک شنبه 02 بهمن 1390, 21:57 عصر
با تشکر
اگه میشه دقیقا بگید

zarrinnegar
یک شنبه 02 بهمن 1390, 23:05 عصر
کوئری یعنی همون select ها که در نهایت نتیجه ای رو برمیگردونه
اگر کوئری نوشته شده بصورت view ذخیره بشه میشه View واگه بصورتSp ذخیره بشه میشه پروسیجر

اگر هم جایی ذخیره نشه میشه همون کوئری

sadra1234
دوشنبه 03 بهمن 1390, 14:07 عصر
سلام
ببخشید جناب zarrinnegar (http://barnamenevis.org/member.php?31940-zarrinnegar) فرمودین که نمیشه به view ورودی پاس داد یعنی این کد جواب نمیده:
select * from view_student where tblstudent.name = ' " +txtname.text+" '0

setayesh2
چهارشنبه 12 خرداد 1395, 21:09 عصر
سلام
میشه در این مورد یکی جواب بده.
من این دستور واسه view رو توی سی شارپ نوشتم می خوام ببینم اشکالش چیه
mycom.CommandText = "create view level1 as select field1 from customer where field2=1";
mycom.Parameters.AddWithValue("p",textBox1.Text);
داره به خط دوم خطا میده. البته اتصال و بقیه چیزا درست هستن. فقط مشکلش همون خط دومه. من اگه بخوام به view پارامتر بدم چطوری پس باید انجام بدم.
مرسی