ايران ويج

نسخه‌ی کامل: موافقيد يا نه
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
:?: تصميم دارم از اين پس تنها رو زمينه بانك اطلاعاتي و وي بي مقاله و برنامه ارسال كنم چون اصل تخصصم اينه و كل دوران دانشجويي را صرف اين موضوع كردم و از صفر شروع ميكنم تا هر جا جواب بده .

هر كسي هم سوالي داره اگر در توانم باشه نوكرشم هستم .
چرا كه شروع كن من يكي آماده آمادم .
نوكرتم.
خوب آقا من يه سوال دارم . من مي خوام يه برنامه ديكشنري ميكر بنويسم و اطلاعاتي رو كه با ديكشنري درست مي كنم تو يه فايل ديتابيس ذخيره كنم . نحوه كار چيه ؟ ( برنامه با ويژوال بيسيك نوشته شده و ديتابيس هم ترجيحا با اكسس مي باشد ) با تشكر فقط يكم زودتر جواب بدين مرسي .
علي خان ما هم منتظريم . من يه سوال دارم اونم اينه كه آيا توي مدل ADO بازهم اسناپ شات يا ديناست و جدول كه توي DAO ميشناسيم ؛ هنوز وجود داره ؟؟ اگه وجود داره چطوري ميشه ايجادشون كرد ؟؟
ممنون
با سلام
در جواب سوالت بايد بگم كه بله عزيزم وجود داره و اگر آبجكتهاي خود را با كد درست كني ميتوني از
پارامترهاي آنها استفاده كني مثلا
Dim rs As ADODB.Recordset
rs.Open([source],[active connection],[cursor type],[lock type],[option])
اين قسمتي كه زرد كردم همونيه كه شما ميخواي اما در مدل rdo چون کاستیهای بسیاری نسبت به
ado دارد این پارامتر را خودمان تنظیم میکنیم اما در ado خودش به بهترین نحئ آن را تنظیم میکند به عنوان مثال در برنامه های مالتی یوزر خودش بانک را در مواقع لزوم ایزوله میکنه و جدول را لاک میکنه و
بر اساس نوع لاک کرسر تایپ را تنظیم میکند پس در نتیجه اگر ما دستش نزنیم بهتره عزیزم
در ضمن اینکه این موضوعی که شما پرسیدید تنها در برنامه های مالتی یوزر کاربرد دارد و در
تک یوزره هر چی بزاری فرقی نداره مگر گزینه فوروارد اونلی را انتخاب کنیم
قربانت
عزيزم اگر سوالت را درست فهميده باشم اين كه كاري نداره
1- يه جدول با سه فيلد درست ميكني حالا هر بانكي باشه اصلا مهم نيست از اين دو فيلد يكي براي كلمه لاتين و ديگري براي معني و فيلد لاتين را كليد اصلي ميگيري
2- در عرض سه سوت با ويزارد ويبي (البته فعلا چون اول كاره) يه فرم ورود اطلاعات درست ميكني
و تمام اگر دوست داري ميتوني ظاهرش را عوض كني و در ضمن نوع ويزارد را كد انتخاب كن تا كلي چيز ياد بگيري
اصلا صبر كن تا يه نمونه برات بفرستم
قربانت
دوست عزيز علي جان سلام . واقعا ممنون كه جواب ما رو دادي و شير فهممون كردي ولي شرمنده كه سوالات تمومي ندارن .

پس كرسر ها كه شما اشاره كردي اين كار رو براي ميكنن . من سروكارم با مالتي يوزره .دقيقا ديتابيس هاي وب سايت ها كه در آن واحد چندين يوزر بهش دسترسي دارن و حتي ممكنه كه يه ركورد بخواد در آن واحد دستكاري بشه .

سوال اول اگر جسارت نيست مي خوام در مورد كار با كرسر ها بيشتر بدونم و مسله برام روشنتر بشه . مفهوم اون رو درك كردم ولي خب كاربرد مثلا كرسر ديناميك چيه كه هم عقب ميره هم جلو ؟؟ يه توضيح كامل بدي جا ميافته ( ذهنيت ما DAO هستش ؛ شرمنده !)

سوال دوم اينه : براي جلوگيري از تغيير همزمان يه ركورد بايد ركورد رو قفل كرد . چندين نوع قفل از جمله بدبيناننه و خوش بيناننه و دسته اي داريم . به نظر شما در ساختار يه ديتابانك وب سايت كدومش بهتر جواب ميده و سريعتره ؟؟؟ همچنين در صورتي كه از دسترسي يك نفر به ركورد جلوگيري بشه با خطا روبرو ميشه . چطوري ميشه متوجه اين خطا شد و كاري كرد كه كاربر با پيغام خطا روبرو نشه ؟؟ ( توي محيط وب سايت ) مثلا در ASP اگه همچين خطايي رخ بده سرور كد اون خط رو لو ميده و يه صفحه خطا نمايش ميده و من نمي خوام يوزرم اون كد خطا رو ببينه چون از نظر امنيتي و يا زيبايي كار ؛ جالب نيست.

با تشكر از شما و به اميد اينكه از دانش شما مشكلات بيسوادهايي مثل ما رفع بشه .
موفق و سرفراز باشي .
سلام
داري با حرفات شرمنده ميكني عزيزم
درمورد سوالت بايد بگم اگر در هنگام باز كردن ركورد ست هيچ يك از پارامترها (به جز ([source],[active connection) را هم تنظيم نكني اون مشكلاتي كه گفتي پيش نمياد
اما در asp اگر کلید کردی و میخوای استفاده کنی در همه جا از کد زیر استفاده کن تا در هنگام آپدیت کردن مشکلی پیش نیاد و اونی که میخوای هم بشه عزیزم
rs.Open([source],[active connection],3,3)
یا علی مدد محمد جان
علي جان ممنون و قربان محبتت .
سلام محمد جان
شرمنده يادم رفته بود جواب قسمت اول سوالت را بدم
جواب آنكه تنظيم اين كرسرها معمولا براي دو مورد مهم استفاده ميشه
1- سرعت
2-امنيت
در مورد امنيت اطلاعات كه گفتم تنظيمات خود وي بي عاليه
اما درمورد سرعت ببين عزيز فرض كن در يه بانك بخواي ليست اسامي كاربران را نشان بدي پس لزومي
نداره جدول را طوري باز كني كه بتوان آن را اديت كرد پس آن را با پارامتر forward only باز میکنیم تا الکی وقت سیستم را نگیریم و بار اضاقه روی دوشش نندازیم فقط سه سوت اطلاعات را بیرون بکشه نه مجبور باشه تمام بانک را زیر نظر داشته باشه که نکنه ادیت شه یا پاک شه و ....
حالا توضیح =ارامترها
forward only جدول فقط خواندنی و فقط رو به جلو
dynamic جدول با تمام امکانات موجود باز میشه و درضمن کل اطلاعات سلکت شده نیز بافر شده و در رم قرار میگیرد و تغییرات فورا در بانک اصلی ثبت میشود
keyset در این مورد مانند حالت قبلی همه امکانات وجود دارد ولی از کل اطلاعات بدست امده یک محدوده معین شده در بافر قرار میگیرد و کل بانک یه جا بافر نمیشه
static رکوردها را در همه طرف میتوان پیمایش کرد ولی تغییرات مستقیم در بانک ثبت نمیشه و ابتدا در بافر ذخیره میشه اگر خواستی بعدا در بانک اصلی این مساله را بعدا در بحث تراکنشها بیشتر شرح خواهم دااد
دستورات تراکنشها همان
begintrans
endtrans
rollbacktrans
هستند که در msdn اطلاعات خوبی در این مورد است
قربانت
علي جان سلام
بابا دشمنت شرمنده و دمت گرم و دستت درد نكنه .
واقعا جا انداختي مطلب رو . دستت درد نكنه . پيگاه داده رو شروع كن كه بد جور منتظريم .
بازهم ممنون
قربانت ممد