PDA

View Full Version : نمایش رکوردهای خاصی از یک جدول



dr_ghezavat
جمعه 12 تیر 1388, 20:28 عصر
سلام .یه دفترچه تلفن با دیتابیس SQL درست کردم. میخوام کاری کنم که وقتی کاربر با رمز وارد برنامه میشه اطلاعات خودش + اطلاعات پابلیک رو مشاهده کنه و اگر به صورت مهمان وارد برنامه شد فقط اطلاعات عمومی رو ببینه . باید از فیلدی از نوع بیت استفاده کنم ولی نمیدونم چطوری و چه دستوراتی رو بنویسم.

مهدی رحیم زاده
جمعه 12 تیر 1388, 21:35 عصر
با چی مشکل دارین؟
کار با بانک اطلاعاتی ؟
اگه اینه که نمونه برنامه های سی شارپ منبع بسیار خوبیه .
موفق باشید

dr_ghezavat
جمعه 12 تیر 1388, 22:03 عصر
مورد مشابه رو نمیتونم پیدا کنم. خیلی گشتم.

mohsen_zelzela00
شنبه 13 تیر 1388, 01:38 صبح
سلام .یه دفترچه تلفن با دیتابیس SQL درست کردم. میخوام کاری کنم که وقتی کاربر با رمز وارد برنامه میشه اطلاعات خودش + اطلاعات پابلیک رو مشاهده کنه و اگر به صورت مهمان وارد برنامه شد فقط اطلاعات عمومی رو ببینه . باید از فیلدی از نوع بیت استفاده کنم ولی نمیدونم چطوری و چه دستوراتی رو بنویسم.
در اینجا احتیاج به یک متغیر از نوع int داری با مقدار اولیه صفر(صفر برای کاربرای مهمان)و اگر کاربر login کرد شماره کابری این کاربر را درون این متغییر صحیح قرار بدی تا بتونی اطلاعات خودش رو بهش نشون بدید در ضمن برای جدول اطلاعات احتیاج به یک فیلد دارید که public یا private بودن رکورد رو نشون بده

dr_ghezavat
شنبه 13 تیر 1388, 08:34 صبح
در اینجا احتیاج به یک متغیر از نوع int داری با مقدار اولیه صفر(صفر برای کاربرای مهمان)و اگر کاربر login کرد شماره کابری این کاربر را درون این متغییر صحیح قرار بدی تا بتونی اطلاعات خودش رو بهش نشون بدید در ضمن برای جدول اطلاعات احتیاج به یک فیلد دارید که public یا private بودن رکورد رو نشون بده
بسیار خب متوجه شدم ولی public ya private بودنش رو چطور مشخص کنم؟ یعنی با نوشتن کد برای این قسمتش مشکل دارم .

Yasersadegh
شنبه 13 تیر 1388, 08:50 صبح
سلام به دوستان

سلام .یه دفترچه تلفن با دیتابیس SQL درست کردم. میخوام کاری کنم که وقتی کاربر با رمز وارد برنامه میشه اطلاعات خودش + اطلاعات پابلیک رو مشاهده کنه و اگر به صورت مهمان وارد برنامه شد فقط اطلاعات عمومی رو ببینه . باید از فیلدی از نوع بیت استفاده کنم ولی نمیدونم چطوری و چه دستوراتی رو بنویسم.
خوب دوست عزيز ببينيد شما بايد برايه اطلاعات تلفنها يه فيلد اضافه مي كنيد از نوع بيت كه اگه 0 بود يعني عمومي و اگه 1 بود يعني خصوصي!! در اطلاعات كاربران هم چيزي لازم نيست!!:لبخندساده:
حالا موقع باز كردن برنامه كابران رمز ورود خود را وارد مي كنند پس اگر كسي با رمز ورود وارد شد يعني كاربر است و تمام اطلاعات نمايش داده مي شود ولي اگر كسي بدون رمز وارد شد يعني مهمان است و تنها اطلاعاتي را نمايش مي دهيد كه فيلد آخري كه از نوع بيت بود برابر 0 باشد!! كه اين بايه كوئري به راحتي قابل انجام است!!
بازم اگه مبهمه بگيد تا با مثال توضيح بدم!!:لبخندساده:
موفق باشيد:چشمک:

dr_ghezavat
شنبه 13 تیر 1388, 09:14 صبح
فرمایش متین . ولی من مشکلم توی همینه یعنی به مباحث مربوط به دیتابیس مسلط نیستم و در نوشتن کد براش مشکل دارم. هیچ جایی هم نتونستم مورد مشابهی پیدا کنم تا ازش الهام بگیرم.

Yasersadegh
شنبه 13 تیر 1388, 09:43 صبح
دوست عزيز غير ممكنه در اين مورد نتوني چيزي پيدا كني چه تويه اين سايت چه تويه گوگل!!
ولي چون قول مثال دادم يه نمونه كد ساده مي ذارم و توضيح مي دم تا كمكي كرده باشم!!:چشمک:



string connectionString = "Server=ServerName;database=Databasename;";

SqlConnection connection = new SqlConnection(connectionString);
connection.Open();

SqlCommand command = new SqlCommand("select * from Tablename where field1=0", connection);
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
//كد مربوط به نمايش اطلاعات رو در اين بخش مي نويسي
}


ببينيد دوست عزيز شما ابتدا بايد به ديتابستون كه sql كانكت كنيد كه سه خط اول اين كارو مي كنن و فقط شما كافيه به جاي عبارت ServerNameنام كامپيوترتون رو بنويسيد و به جاي Databasename نام دينابيستون رو بنويسيد!!
بعد از برقراري ارتباط بايد كوئري مورد نظرتون رو بنويسيد كه آبجكت sqlCommand برايه اين منظور استفاده ميشه!! در واقع اصلي ترين بخش هر كد ديتابيس اين بخش است كه بسته به نوع كارتون تنها كوئريتون عوض ميشه!! در اين مثال كوئري كه نوشتم اين كار رو ميكنه كه از داخل جدولتون تمام ركورد هايي كه field1 آنها برابر صفر هست رو ليست ميكنه!! كافيه شما نام جدولتون رو در بخشTablename بنويسيد و نام فيلد آخري كه اضافه كرديد رو به جاي field1 قرار بدهيد!!
درآخر هم اين كوئري رو اجرا مي كنيد و نتيجه در ديتاريدر قرار ميگره كه با هر Read كردن يه ركورد رو ميخونيد و در بخش مشخص شده كد تون رو برايه نمايش اطلاعات مي نويسيد!!:لبخندساده:
بازم اگه مشكلي بود بگيد!!:چشمک:

dr_ghezavat
شنبه 13 تیر 1388, 12:10 عصر
عالی بود .خیلی کمکم کرد.