سلام
اون برنامه ای که قرار بود برای فروم نوشته بشه که یادتون هست ( پیام رسان ایرانویج ) راستش چون بلد نیستم با دیتابیس روی شبکه کار کنم، نمی تونم شروع به کار کنم . ممنون می شم از دوستان من رو راهنمایی کنن چطور می تونم با دیتابیس روی شبکه ارتباز بر قرار کنم.
اگه یه مثال کوچولو هم بزنید ممنون می شم.
سلام خسته نباشي
نمي دونم ديتا بيستون چي هست ولي اگه احتمالا از اكسس استفاده مي كنين كار سختي نيست .
اگه مسيرش رو ادد مي كنين فقط كافيه از روي شبكه مسير رو ادد كنيد حتي اگه سرور خودتون هستين.
البته هم خود سرور و هم كلاينت ها بايد به فولدري كه داخلش بانك هست از روي شبكه شير باشند.
اگه هم مسير رو در سرس مي نويسين بايد مثل نمونه پايين مسير رو بنويسين.
\\falak\remote\anbar.mdb
falak اسم كامپيوتري هست كه سرور شماست . remote اسم فولدي كه در سرور بانك داخلش قرار داره و از روي شبكه براي شما شير شده و anbar.mdb هم اسم بانك اكسستون هست
بازم اگه به مشكل برخوردين خوشحال ميشم كمكتون كنم.
خیلی ممنون از لطفتون.
بله بانک اطلاعاتیم اکسس هست. این توضیحی که دادید رو کاملا متوجه شدم حالا می خواستم بدونم اگه بانک اطلاعاتی روی اینترنت باشه ، یعنی از طریق نت بخوام بهش وصل بشم چطور باید این کار رو انجام بدم؟
در ضمن در مورد همون شبکه هم اگه می شه توضیح بدید برای اینکه چند نفر همزمان از دیتابیس استفاده کنند ، چه تنظیماتی رو باید روی کنترل دیتا یا خود دیتابیس انجام بدم تا به مشکلی برخورد نکنم.
باز هم ممنونم
سلام
در مورد اينترنت متاسفانه من تا حالا اين كار رو نكردم ولي سعي مي كنم انجام بدم و نتيجش رو براتون بنويسم.
در مورد سوال دوم
تفاوتهايي كه كار در روي شبكه با حالت معمولي داره
يك بانك اكسس نمي تونه همزمان بيش از 6 كاربر رو ساپرت كنه . در ضمن با افزايش كار بران سرعت هم كاهش چشمگيري پيدا مي كنه.
راه حل :
شما بايد هميشه تو برنامتون بانك رو بسته نگه داريد. مثلا اگه از ado و يا ديتا اينوايرمنت و....استفاده مي كنين نبايد اون رو روي فرم بزارين كه با لود شدن فرم بانكتون باز شه .بلكه قبل از انجام عمليات دستور اپن رو بدين و بعد از پايان عمليات دستور كلوز رو . با اين دستور فقط زماني كه شما مثلا كامند رو كليك مي كنين بانك باز ميشه و بعد از انجام عمليات دوباره بسته ميشه. شايد براي باز و بسته شدن كمي زمان عمليات افزايش پيدا كنه ولي در مجموع روي شبكه سرعت شما مناسب خواهد بود. با اين كار كاربراي برنامه تعداد افرادي كه برنامه رو بالا هستن نخواهد بود بلكه فقط افرادي هستن كه در حال كار كردن با برنامه هستن.
مورد دوم هم كه به نظرم مهمه در مورد ويراش اطلاعات توسط كاربر هست. مثلا دو كار بر همزمان بخوان يه ركورد رو ويرايش كنن.
شما بايد به طريقي اجازه ويرايش از كاربر دوم رو بگيرين مثلا يه فيلد رو در بانك بزارين كه وقتي كار بر اول مي خواد ويرايش رو در اون ركورد انجام بده تيك بشه و وقتي كار بر دوم مي خواد همزمان اون رو ويرايش كنه بهش پيغام بده كه فيلد توسط كار بر ديگري در حال ويرايش هست و اجازه ويرايش رو ندارين تا زماني كه كار بر اول ويرايش رو انجام بده و تيك برداشته بشه .
موارد ديگه اي هم هست كه فكر نمي كنم به اندازه اين دو مورد اهميت داشته باشه و مطمئن هستم شما خودرتون به هنگام نوشتن برنامه حلش مي كنين. با اين وجود اگه به مشكلي بر خوردين خوشحال ميشم بتونم كمكي كرده باشم.
سلام.
Di Di جان براي شبکه بهتره از SQL استفاده کني. اکسس تو شبکه يا کار نمي کنه يا اگه کر کنه ناقص و با خطاي ديتا هست.
سلام
منم حرف دوستمون در مورد SQL رو تاييد مي كنم. اگه بتوني از SQLاستفاده كني خيلي بهتره. البته ميشه يجورايي از اكسس استفاده كرد كه به مشكل بر نخوريم ولي SQL خيلي اطمينانش بيشتره . اگه تصميم گرفتي از SQL استفاده كني و سئوالي داشتي خوشحال ميشم كمكتون كنم .
واقعا از لطفتون ممنونم.
فکر می کنم حالا دیدخیلی بازتری نسبت به طراحی برنامه تحت شبکه پیدا کردم. تا به حال همیشه از اکسس برای طراحی بانک استفاده می کردم و با SQL چندان راحت نیستم ولی اگه هیچ چاره ای نداشته باشم به قول اساتید باید از اون استفاده کنم چون هم بهتره هم مطمئن تر.
فعلا کارها رو با اکسس انجام می دم تگه مشکل کار با اکسس همینها باشه فکر می کنم بشه با کد نویسی کمبودهاشو برطرف کرد.
باز هم از راهنمایی های جناب tanhatarin و آقا مهدی گل سپاسگذارم
با سلام و احترام؛
فکر می کنم محدودیت هائی که در مورد اکسس عنوان شد یه کم زیادی اقراق باشه. اکسس این طور که فکر می کنید کند و بی مصرف نیست.
آیا شما تا باحال برنامه ای داشتی که کلا با اکسس نوشته شده باشه . فرم ها و ماژول ها و .... (کلا تو دل اکسس)
اگه این کار و کرده باشی متوجه می شی که اکسس هم برنامه مناسبیه.من بانکی رو داشتم که به دلیل نیاز به سرعت در طراحی و راه اندازی سیستم کلاً با اکسس طراحی شده بود تحت شبکه هم کار می کرد و چیزی در حدود 150 کاربر داشت که در هر لحظه حداقل 50 کاربر مشغول کار مداوم و سنگین بودند و روزانه بین 15000 تا 20000 عملیات ثبت و ذخیره می شد. حجم اطلاعاتش هم حدود 2.300.000 رکورد بود که هر رکورد شامل یک سری اطلاعات عملیاتی عجیب و غریب بود.
منکر نمی شم که اکسس تو یه همچین موقعیتی بعضی اوقات کم می آورد ولی به هر حال پاسخگوی نیازها بود.
KHALIL1723 نوشته است:با سلام و احترام؛
فکر می کنم محدودیت هائی که در مورد اکسس عنوان شد یه کم زیادی اقراق باشه. اکسس این طور که فکر می کنید کند و بی مصرف نیست.
آیا شما تا باحال برنامه ای داشتی که کلا با اکسس نوشته شده باشه . فرم ها و ماژول ها و .... (کلا تو دل اکسس)
اگه این کار و کرده باشی متوجه می شی که اکسس هم برنامه مناسبیه.من بانکی رو داشتم که به دلیل نیاز به سرعت در طراحی و راه اندازی سیستم کلاً با اکسس طراحی شده بود تحت شبکه هم کار می کرد و چیزی در حدود 150 کاربر داشت که در هر لحظه حداقل 50 کاربر مشغول کار مداوم و سنگین بودند و روزانه بین 15000 تا 20000 عملیات ثبت و ذخیره می شد. حجم اطلاعاتش هم حدود 2.300.000 رکورد بود که هر رکورد شامل یک سری اطلاعات عملیاتی عجیب و غریب بود.
منکر نمی شم که اکسس تو یه همچین موقعیتی بعضی اوقات کم می آورد ولی به هر حال پاسخگوی نیازها بود.
واقعا؟
معمولا به access نمیشه بیشتر از 6 تا کانکشن زد و در رکوردهای بالای 600000 اذیت میکنه یه کم
من خودم یه آدم اکسس دوستی هستم ولی تا حالا بیشتر از صدهزار رکورد تست نکردم !
(; با یه حلقه for پرش کن یه کم طول میکشه اون موقع امتحانش کن
(از این روش واسه بهینه کردن و دیدن سرعت کدت تو رکوردهای بالا هم میتونی استفاده کنی)