PDA

View Full Version : مشکل با اکسس در دات نت 2008



seyed ehsan
یک شنبه 20 اردیبهشت 1388, 05:22 صبح
سلام به همه .
خیلی وقت نیست که برنامه نویسی می کنم ، حرفه ای هم نیستم ، برای کسی هم کار انجام نمیدم و فقط برای علاقه و بالا بردن دانش خودم هست و بس ...
مدت ها پیش با ویژوال بیسیک 6 برنامه می نوشتم و حالا با ویژوال بیسیک دات نت 2008 . مشکلی که دارم اینه :
من هنوز نمی دونم اگه یه برنامه بانک اطلاعاتی بر مبنای اکسس داشته باشم و بخواهم که برنامه ای که با دات نت نوشته شده در شبکه به بانک اطلاعاتی اکسس وصل بشه باید چکار کرد ؟
من قبلا این کار رو انجام میدادم :
برنامه مورد نظر رو روی همه سیستم ها نصب می کردم
فایل اکسس مورد نظر رو روی سیستم سرور قرار میدادم
پوشه فایل اکسس رو که روی سرور بود بصورت کامل ( هم خواندن و هم نوشتن) شیر می کردم .
توی برنامه نوشته شده آدرس پوشه شیر شده در شبکه رو میدادم به برنامه ...


می دونم که شاید کار احمقانه ای انجام دادم اما بخاطر نداشتن دانش کافی این به ذهن خودم رسید . چون از نظر امنیتی اشکال داره و هر کسی در شبکه می تونه فایل اکسس رو ببینه و اون رو پاک کنه یا کپی کنه .

دوستان راه حل مناسب و صحیح چی هست ؟
من خیلی از تاپیک ها رو خوندم اما چیزی که کامل توضیح داده باشه پیدا نکردم .
لطفا کمکم کنید .

bastakboys
یک شنبه 20 اردیبهشت 1388, 11:51 صبح
نمی دونم دوست عزیز این بهت کمک می کنه یا نه
ولی توی یک برنامه حسابداری دیدم که آدرس بانک اطلاعاتی را در یک کلید در رجستری سرور ذخیره می کرد و سیستم های دیگه از اون کلید رجستری اون آدرس رو می گرفت
اگر از کنکشن استرینگ برای ارتباط با بانک اطلاعاتی استفاده می کنی در کد پایین بجای Data Source=Localhost باید نام سیستم سرور را بدی

Source=سرور



Data Source=Localhost;
Initial Catalog=Sample;Integrated Security=True")

اگه مشکلت حل شد که هیچ و یا بیشتر توضیح بده تا بدونم مشکل اصلی از کجاست

در ضمن بانک اطلاعاتی اکسس مولتی یوزر نیست و فکر می کنم برای برنامه ای که می خواهد در شبکه اجرا شود بهتره از اس قیو ال استفاده کنی

حامد مصافی
یک شنبه 20 اردیبهشت 1388, 11:52 صبح
این مشکل نیست، کمبود اطلاعات است!
یک کتاب در این زمینه بخوانید سپس شروع به برنامه نویسی کنید.

seyed ehsan
دوشنبه 21 اردیبهشت 1388, 01:33 صبح
میشه شما یه کتاب یا چیزی رو معرفی کنید .

حامد مصافی
دوشنبه 21 اردیبهشت 1388, 10:40 صبح
برنامه نویسی بانک های اطلاعاتی در VB.NET
مترجم : رامین مولاناپور
بقیه اطلاعات کتاب یادم نیست.

seyed ehsan
دوشنبه 21 اردیبهشت 1388, 18:33 عصر
دوست عزیز اما من کتاب تو این زمینه ها برای حل شدن مشکلم خیلی خوندم . میدونی ! من برای ارتباط با بانک اطلاعاتی اکسس خودم توسط دی بی دات نت مشکلی ندارم ، من فقط می خواهم بدونم راه صحیح برای استفاده ار یه فایل اکسس در شبکه طوری که همه کلاینت ها بتونن توسط نرم افزار نوشته شده بهش دسترسی پیدا کنند کدام هست ؟
البته بجز کاری که من انجام میدم یعنی قرار دادن فایل اکسس روی یکی از سیستم ها و شیر کردن اون پوشه در شبکه .
یه مثال می زنم :
اگر بخواهم با یه فایل اکسس که روی سیستم خودم هست توسط کد نویسی ار تباط بر قرار کنم این کار رو انجام میدم ( خلاصه کد رو نوشتم )

Provider=microsoft.Jet.Oledb.4.0;Data Source ="C:\Data.mdb"

حالا فرض رو بر این می گذاریم که این فایل روی یه سیستم دیگه در شبکه هست :

Provider=microsoft.Jet.Oledb.4.0;Data Source ="192.168.0.10//data/data.mdb"

من این کار رو انجام میدم البته برنامه هم کار می کنه و مشکلی هم ندارم . ولی میدونم که این صحیح نیست چون من مجبورم که پوشه data را روی 192.168.0.10 بصورت Read and Write شیر کنم تا کار بران بتونن امکان خواندن و نوشتن روی بانک اکسس رو داشته باشن که این صحیح نیست چون این پوشه در شبکه در دسترس همه قرار میگیره و شاید یه کاربر بیاد و فایل رو پاک کنه یا از اون کپی بگیره و ...
حالا اگه میشه دوستان لطف کنن و من رو راهنمایی کنن




:ناراحت:

حامد مصافی
سه شنبه 22 اردیبهشت 1388, 10:33 صبح
روشی که شما استفاده کرده اید روش صحیح برنامه نویسی چند کاربره نیست. حتی اگر فایل دیتا بیس را به ایم شکل روی یکی از فولدر های شبکه قرار دهید، مادامی که راهکاری برای اتصال چندین کاربر بدان پیاده سازی نکنید برنامه شما همچنان یک برنامه تک کاربره است.
ضمناً نگران پاک شدن فایل نیز نباشید، چون در حالت اول هم کاربر می تواند فایل را از درایو C حذف کنید.
چیزی که شما بدنبال آن می گردید یک مدیر مجتمع دیتابیس (چیزی مانند Sql Server) است.