ورود

نسخه کامل مشاهده نسخه کامل : یه نرم افزار هتل می خواستم بنویسم پایگاه Access می خواستم استفاده کنم



mahdi bg
06-03-2007, 05:47
سلام
یه نرم افزار هتل می خوام بنویسم
از پایگاه Access می خوام استفاده کنم
آیا می تونه این حجم اطلاعات رو پشتیبانی کنه
(تا حالا فقط با SQl Server 2000 می نوشتم)
حداکثر رکوردی که داخل اکسس میشه استفاده کرد چند تا
تقریبی هم بگین کافیه
ممنون

hamed2661
06-03-2007, 08:29
از شمائي كه ميگين با SQL كار كردين اين سئوال بعيده . محدوديتي نداره فقط اگه از خود engine اكسس استفاده كنين سرعت دسترسي به ركوردها كمتره .

مرد مباح
06-03-2007, 11:14
حامد جان راست ميگه.
محدوديتي نداره و به خاطر اينكه نيازي به نسب برنامه اضافي براي راه اندازي توي كامپيوترهاي ديگه نيست، خيلي مفيده.

Mahmood_N
06-03-2007, 14:23
سلام
شدیدا توصیه می کنم از Sql استفاده نمایید ... !

hamed2661
06-03-2007, 18:31
سلام
شدیدا توصیه می کنم از Sql استفاده نمایید ... !

حالا چرا شديداً بده از امكانات اكسس در موقعي كه كار راه اندازه استفاده بشه ؟ اين توصيه آدمو ياد ژاپنيا ميندازه كه هر كاري رو با مشكل ترين راه حل انجامش ميدن .

مرد مباح
06-03-2007, 20:20
فكر كنم محمود جان به دليل قدرت Sql اين ژيشنهاد رو دادن.
ولي بايد اين واقعيت رو در نظر داشت كه در سطح يك كامژيوتر (نه در شبكه) اكسس هم راحتتره و هم جوابگوئي بهتري داره .

hamed2661
07-03-2007, 10:48
خدائيش تو محيط شبكه (‌البته با تعداد محدود زير 10 نفر )‌ ازش داريم استفاده مي كنيم اطلاعات هم نسبتا حجيم و سنگينين ولي خوب جواب داده تا حالا سرعتش هم بد نيست .

Mahmood_N
08-03-2007, 01:05
سلام

حالا چرا شديداً بده از امكانات اكسس در موقعي كه كار راه اندازه استفاده بشه ؟ اين توصيه آدمو ياد ژاپنيا ميندازه كه هر كاري رو با مشكل ترين راه حل انجامش ميدن
در برخی مواقع برای اطمینان بیشتر از بازده کار ، باید مشکل ترین راه حلها رو امتحان کرد ... !!
بانک اکسس در صورتی که اطلاعات ( رکوردها ) بیش از حداقل 2000 یا 3000 ، جستجوش خیلی کند میشه ( از مرز 5 ثانیه می گذره ) ...
ولی SQL این مشکل رو نداره ، و در تعداد رکوردهای بالا این مشکل پیش نمی یاد ...
نکته مهم دیگه امنیت اکسس هست که چیزی در موردش نگم بهتره ...
مهمترین دلیل من برای این تاکید این بود که با SQL ، میشه کلی در استفاده از حافظه صرفه جویی کرد و سرعت کار با جداول رو بالا برد ...
استفاده از ADOQuery و دستورات SQL ، می تونه کلی از حافظه اشغال شده رو آزاد کنه ...
برای مثال برای فیلتر کردن یک جدول اگر از یک ADOTable و دستور Filter استفاده بشه ، کل رکوردهای جدول در حافظه می مونند و فقط اونهایی که توی شرط فیلتر هستند نشون داده میشند ( بقیه آزاد نمی شن ، فقط پنهان میشن ) ، ولی در صورت استفاده از SQL ، با یک Query می شه فقط رکوردهای مورد نظر رو لود کرد و حافظه رو اشغال نکرد ...
شاید این موضوع در برنامه زیاد محسوس نباشه ولی در صورت استفاده زیاد مشکلاتی ( اعصاب خورد کن ) رو به وجود می یاره ...
البته مورد بالا برای برنامه های تحت شبکه هست ...

خلاصه بسته به برنامت می تونی از یکیشون استفاده کنی ، ولی احتمال پشیمان شدن استفاده از اکسس از SQL بیشتره ... !!


فكر كنم محمود جان به دليل قدرت Sql اين ژيشنهاد رو دادن.
ولي بايد اين واقعيت رو در نظر داشت كه در سطح يك كامژيوتر (نه در شبكه) اكسس هم راحتتره و هم جوابگوئي بهتري داره .

توی کاربرد راحت اکسس شکی نیست ولی یه خورده سختی برای کارایی بیشتر بی ارزش نخواهد بود ...


خدائيش تو محيط شبكه (‌البته با تعداد محدود زير 10 نفر )‌ ازش داريم استفاده مي كنيم اطلاعات هم نسبتا حجيم و سنگينين ولي خوب جواب داده تا حالا سرعتش هم بد نيست .
البته من از طرز کار برنامه شما خبر ندارم ، ولی این احتمال رو می دم که در بعضی موارد به مشکل بر خواهید خورد ...

موفق باشید ...

mahdi bg
10-03-2007, 07:01
سلام
از همه دوستان ممنون
من شنیده بودم 10000 رکورد رو بیشتر پشتیبانی
نمی کنه بعدش قات میزنه
SQL Server رو برای برنامه های خیلی حجیم و سنگین
و تحت شبکه استفاده میکنم
میگم تا حالا برنامه ای با Access ننوشتم

MasterData
11-03-2007, 07:23
من شنیده بودم 10000 رکورد رو بیشتر پشتیبانینمی کنه بعدش قات میزنهSQL Server رو برای برنامه های خیلی حجیم و سنگین
ردسته يكي ازبرنامه هاي من داره شايد با بيش از 15 هزار ركورد كار ميكنه هيچ ميشكلي هم نداره
اما همون سيستم رو دارم با SQL Server باز نويسي ميكنم
خيلي از امكاناتي كه نمي شد الان دارم به راحتي پياده سازي ميكنم
سرعتش هو واقعا قابل قياس نيست
يكي از پروژه ها با بيش از 50 هزار ركورد به صورت تحت شبكه داره مثل فرفره كار ميكنه هر چند كه ساختار برنامه واقعا بدرد نخور است
يه چيز ديگخ رو هم مد نظر داشته باش ؛ الان خيلي ها نمي تونن با بانكهاي SQL سرو كله بزنن اين يعني شانس بيشتري براي جلوگيري از كپي شدن برنامه و همچنين ميتونيد خدمات پشتيباني اون سيستم رو فقط خودتون ارائه بديد
قرار نيست فقط كد بنويسيد بعدش هم خدا حافظ
فرداي روزگار هزار و يك درخواست ديگه براي برنامه تون دريافت ميكنيد
پس بهتره يه خورده دور انديش هم باشيد

bad_boy_2007
11-03-2007, 15:22
سلام

در برخی مواقع برای اطمینان بیشتر از بازده کار ، باید مشکل ترین راه حلها رو امتحان کرد ... !!
بانک اکسس در صورتی که اطلاعات ( رکوردها ) بیش از حداقل 2000 یا 3000 ، جستجوش خیلی کند میشه ( از مرز 5 ثانیه می گذره ) ...
ولی SQL این مشکل رو نداره ، و در تعداد رکوردهای بالا این مشکل پیش نمی یاد ...
نکته مهم دیگه امنیت اکسس هست که چیزی در موردش نگم بهتره ...
مهمترین دلیل من برای این تاکید این بود که با SQL ، میشه کلی در استفاده از حافظه صرفه جویی کرد و سرعت کار با جداول رو بالا برد ...
استفاده از ADOQuery و دستورات SQL ، می تونه کلی از حافظه اشغال شده رو آزاد کنه ...
برای مثال برای فیلتر کردن یک جدول اگر از یک ADOTable و دستور Filter استفاده بشه ، کل رکوردهای جدول در حافظه می مونند و فقط اونهایی که توی شرط فیلتر هستند نشون داده میشند ( بقیه آزاد نمی شن ، فقط پنهان میشن ) ، ولی در صورت استفاده از SQL ، با یک Query می شه فقط رکوردهای مورد نظر رو لود کرد و حافظه رو اشغال نکرد ...
شاید این موضوع در برنامه زیاد محسوس نباشه ولی در صورت استفاده زیاد مشکلاتی ( اعصاب خورد کن ) رو به وجود می یاره ...
البته مورد بالا برای برنامه های تحت شبکه هست ...

خلاصه بسته به برنامت می تونی از یکیشون استفاده کنی ، ولی احتمال پشیمان شدن استفاده از اکسس از SQL بیشتره ... !!


توی کاربرد راحت اکسس شکی نیست ولی یه خورده سختی برای کارایی بیشتر بی ارزش نخواهد بود ...


البته من از طرز کار برنامه شما خبر ندارم ، ولی این احتمال رو می دم که در بعضی موارد به مشکل بر خواهید خورد ...

موفق باشید ...

در مورد سرعت جستو جوی کم در اکسس فکر میکنم اشتباه میکنین .
من یک بانک اکسس دارم که حدود 460 هزار قلم اطلاعات داره و مربوط میشه به برنامه یه دانشگاه که از سال 76 تا همین الان نمرات دانشجوهاشون رو توش ذخیره کردن ، سرعت جست و جو با seek رو یه سیستم با cpu 500 و ram 256 خیلی عالیه تقریبا بلادرنگ .
حجم بانکام 19مگابایته و با vb برنامش نوشته شده

mahdi bg
12-03-2007, 07:14
سلام


از شمائي كه ميگين با SQL كار كردين اين سئوال بعيده . محدوديتي نداره فقط اگه از خود engine اكسس استفاده كنين سرعت دسترسي به ركوردها كمتره .


محدوديتي نداره و به خاطر اينكه نيازي به نسب برنامه اضافي براي راه اندازي توي كامپيوترهاي ديگه نيست، خيلي مفيده.

در این حد رو می دونم منظورم این بود که برنامه برای
تحویل به مشتری با Access ننوشته بودم
فعلا هم طرف منصرف شده اما باز هم ممنون

mahdi bg
12-03-2007, 07:15
سلام


استفاده از ADOQuery و دستورات SQL ، می تونه کلی از حافظه اشغال شده رو آزاد کنه ...
برای مثال برای فیلتر کردن یک جدول اگر از یک ADOTable و دستور Filter استفاده بشه ، کل رکوردهای جدول در حافظه می مونند و فقط اونهایی که توی شرط فیلتر هستند نشون داده میشند ( بقیه آزاد نمی شن ، فقط پنهان میشن ) ، ولی در صورت استفاده از SQL ، با یک Query می شه فقط رکوردهای مورد نظر رو لود کرد و حافظه رو اشغال نکرد ...

Mahmood_N عزیز از این نوشته تون تعجب کردم
مگر با اکسس نمیشه از ADOQuery استفاده کرد؟؟؟؟


نکته مهم دیگه امنیت اکسس هست

توی این برنامه زیاد مهم نیود
چون فعلا cancel شده و طرف منصرف شده

توی قدرت SQL Server هم شکی نیست
بازم هم ممنون

Mahmood_N
13-03-2007, 05:53
سلام

Mahmood_N عزیز از این نوشته تون تعجب کردم
مگر با اکسس نمیشه از ADOQuery استفاده کرد؟؟؟؟
درسته ! ...
ولی منظورم استفاده تنها از این کامپوننت نبود ، منظورم دستورات SQL ای هست که کار رو خیلی راحت تر می کنه ، و با استفاده از این کامپوننت ( و کامپوننتهای دیگه ) میشه ازش استفاده کرد ، راستش شاید با اکسس هم بشه و من نمی دونم !!!!!!!!

موفق باشید ...