PDA

View Full Version : تبدیل SQL به Access



AfraAfra
پنج شنبه 01 تیر 1391, 00:16 صبح
سلام
دوستان اگر بخوایم به دلایل امنیتی، دیتابیس sql رو به access تبدیل کنیم آیا در سرعت اجرای گزارشات تغییری ایجاد می شه؟ این سؤال رو از این جهت مطرح می کنم که حجم داده ها در هر رکورد در اکثر مواقع زیاده و می خوام بدونم که آیا اکسس می تونه حجم بالای اطلاعات رو به خوبی مدیریت کنه؟
با تشکر

hf.farhadi
پنج شنبه 01 تیر 1391, 00:36 صبح
با سلام
من خودم یه بار هوس کردم این کار رو انجام بدم و با مشکلاتی از قبیل کند شدن برنامه و دیر باز شدن گزارشات و فرمها رو برو شدم
چون اکسس با همه تواناییها و حسنهایی که داره در رو برو شدن با حجم اطلاعات بالا یه جورایی کم میاره و جوابگو نیست. و به نظر من همون تو sql بمونی و به جای مهاجرت به اکسس ، مشکل امنیتی رو حل کنی راحتتری

AfraAfra
پنج شنبه 01 تیر 1391, 00:46 صبح
ممنون از شما
البته من یک برنامه تحت اکسس دارم که تقریباً حجم بانک اطلاعاتیش بالغ بر 500 مگابایته ولی اجرای گزارشاتش تقریباً سریع تر از برنامه بنده در اس کیو ال با حجم تقریبی 200 مگابایته. رکوردهای اون اکس اونقدر سنگینه که وقتی بعضی از رکوردهای رو از طریق خود برنامه اکسس می خوای کپی کنی اکسس هنگ می کنه و باید از طریق برنامه اون رکورد رو فراخوانی کنی و محتوای گزارش رو کپی کنی.
به هر حال، چون برای مشکل امنیتی در sql هیچ راه حلی پیدا نکردم نمی دونم چه کار باید کرد:گریه:
حالا برنامه ای که با دات نت 4 و سی شارپ نوشته شده رو می شه پایگاه داده اش رو به اکسس تبدیل کرد؟

hf.farhadi
پنج شنبه 01 تیر 1391, 00:55 صبح
در مورد تواناییهای اکسس شکی نیست ولی خوب من تجربه ای که کرده بودم خدمتتون عرض کردم شما هم میخواین یه تست بزنین فوقش اینه که نتیجه مطلوب رو نگیرین ولی ارزش تجربرو داره (البته با توجه به دیتابیستون)
در مورد دات نت 4 و سی شارپ هم تجربشو ندارم و دوستانی که با اونا کار کردن راهنماییتون میکنن
یا علی

AfraAfra
پنج شنبه 01 تیر 1391, 01:01 صبح
خیلی از شما ممنونم
منتظر توضیحات بقیه دوستان هستم

mazoolagh
شنبه 03 تیر 1391, 10:11 صبح
همیشه برعکس این قضیه است چون استفاده از sql server به مراتب امنتر از mdb,accdb هست! هم از نظر کنترل دسترسی و هم از نظر خرابی و ...

استفاده از sql server یا اکسس به تنهایی ملاک سرعت نیست. یک برنامه نویس ماهر و باتجربه بدون sql برنامه بهتر و سریعتری نسبت به یک برنامه نویس ناوارد که از sql استفاده میکنه میسازه

AfraAfra
شنبه 03 تیر 1391, 13:30 عصر
بستگی داره که شما امنیت sql رو در چه موردی و در چه پروژه ای ببینید.

پروژه ای که نرم افزار روی یک سرور نصب می شود تا مشتری اطلاعات خود را در آن وارد کند (مثل نرم افزارهای حسابداری) دیتای بانک اطلاعاتی متعلق به مالک نرم افزار یا برنامه نویس نیست که نگران این نکته باشند که مشتری می تواند به روشی به دیتا دسترسی داشته باشند به همین دلیل به مشتری گرفته می شود اگر می خواهد شخص دیگری به اطلاعات دسترسی نداشته باشد یا دسترسی به بانک را از کلاینت وی حذف می کنند یا دسترسی مستقیم به سرور را. بله در این حالت امنیت sql خیلی خوبه چون هک کردن دسترسی ها کار مشکلیه.

اما وقتی یک برنامه مثل این چیزی که من در پستهای قبلی عرض کردم باشه یعنی دسترسی مستقیم به اطلاعات موجود در پایگاه داده یک مسئله امنیتی باشه و مجبور باشید فایل پایگاه داده رو که اصلی ترین جزء نرم افزار شماست رو در سی دی قرار بدید (چون با این نرم افزار شما دارید دیتا می فروشید و خود نرم افزار ابزار فروش اون دیتاست) دیگه اس کیو ال گزینه مناسبی نمی تونه باشه.

تا اینجا 7 پست ارسال شده و من چند بار به نقائص اس کیو ال در این زمینه بطور مشروح اشاره کردم حالا اگه شما می فرمایید "همیشه برعکسه و امنیت sql بیشتر از اکسسه" بفرمایید چطور باید این مشکل رو حل کرد صرفاً گفتن اینکه sql امنیت داره که مهم نیست باید در مقابل ایراد امنیتی راهکار ایجاد امنیتی ارائه کرد.

mazoolagh
یک شنبه 04 تیر 1391, 11:39 صبح
این موضوع هم که امنیت sql بالاتر از اکسس هست یک حقیقت مطلق هست و نه نسبی و جای بحث هم نداره! حالا اگر به هر دلیل شما نمیتونین از sql استفاده کنین دلیل بر نقص یا اشکال امنیتی در sql نیست.

اگر امنیت از نظر شما در این خلاصه میشه که صرفا کسی به جداول دسترسی نداشته باشه کافی هست از access 2007 و به بالا استفاده کنین و روش پسورد بگذارین.

بد نیست بدونین اگر اپلیکیشن شما از دیتابیس sql استفاده میکنه معنیش این نیست که کلاینت حتما باید sql server داشته باشه، میتونین از sql lite یا sql ce استفاده کنین. راه حل های غیر مایکروسافتی هم هست.

AfraAfra
یک شنبه 04 تیر 1391, 11:53 صبح
خیلی ممنون ار شما


این موضوع هم که امنیت sql بالاتر از اکسس هست یک حقیقت مطلق هست و نه نسبی و جای بحث هم نداره! حالا اگر به هر دلیل شما نمیتونین از sql استفاده کنین دلیل بر نقص یا اشکال امنیتی در sql نیست.

دنیای مطلق ها خیلی وقته که دوره اش به پایان رسیده و باید پدیده ها و موضوعات رو از دریچه نسبیت دید. هر چیزی بنا به شرایط و مقتضیاتش نسبت به چیز دیگه کامل تر یا شاید ناقص تر باشه. شرایط و اقتضاست که بسیاری موضوعات رو مشخص می کنه.


اگر امنیت از نظر شما در این خلاصه میشه که صرفا کسی به جداول دسترسی نداشته باشه کافی هست از access 2007 و به بالا استفاده کنین و روش پسورد بگذارین.

خوب امنیت برای من صرفاً در این خلاصه نمی شه بلکه در حال حاضر امنیتی که مد نظر دارم اینه و وقتی این مسئله وجود نداشته باشه یعنی دیتابیس امنیت نداره. اما وقتی یک برنامه دیگه با شرایط دیگه رو بررسی می کنم نگرش به نقطه قوتها و نقطه ضعفها فرق می کنه (مثل برنامه های حسابداری که دیگه دسترسی به جداول در اکثر مواقع ضعف نیست بلکه باید ادمین سرور رو شخص امینی انتخاب کرد)


بد نیست بدونین اگر اپلیکیشن شما از دیتابیس sql استفاده میکنه معنیش این نیست که کلاینت حتما باید sql server داشته باشه، میتونین از sql lite یا sql ce استفاده کنین. راه حل های غیر مایکروسافتی هم هست.

خوب حالا برنامه که با اس کیو ال 2005 کار می کنه نباید روی کلاینتها sql server نصب بشه؟

با این برنامه ای که در موردش صحبت می کنیم چطور می شه به جای نصب sql server روی کلاینتها از sql lite یا sql ce استفاده کرد؟ بعد استفاده از این راهکارها چه مزایایی داره؟
آیا مشکل فایلهای دیتابیسی که در سی دی قرار دارن با این پیشنهاد شما حل می شه؟

اگر در مورد راهکارهای غیر مایکروسافتی هم کمی توضیح بدید خیلی ممنون می شم.
با تشکر

mazoolagh
دوشنبه 05 تیر 1391, 11:22 صبح
شما یک چیزی در ذهنتون دارین که اسمش رو گذاشتین امنیت که با تعریف من از امنیت شاید فرق داشته باشه و ادامه بحث نتیجه ای نخواهد داشت.

در مورد SQL CE/SQL LITE هم بهترین مرجع خود مایکروسافت و گوگل کردن هست.

AfraAfra
دوشنبه 05 تیر 1391, 12:53 عصر
یعنی اگر کارفرماتون از شما بخواد چنین امنیتی رو در برنامه اش داشته باشه شما بهش می گید که این امنیت از نظر شما امنیته و از نظر من امنیت یه چیز دیگه است؟!!!!!

اصلاً من چی کار دارم به اینکه شما امنیت رو چی می دونید یا اینکه شما چی کار دارید به اینکه من امنیت رو چی می دونم. یه سنارویویی وجود داره و مطرحش کردم حالا دنبال پیاده سازی اون سناریو با راهکار مناسب هستم.

به هر حال 3 تا پست ارسال کردید که به هیچ وجه برای این تاپیک مفید نبوده و فقط کلی گویی بدون دفاع کردید و وقتی ازتون در مورد کلی گوییتون سؤال شد هم پاسخ ندادید. به نظر من یا بهتره وارد بحث نشید یا اگر می شید به عنوان یک شخص مؤثر عمل کنید چون در غیر اینصورت بیشتر نقش spammer رو پیدا می کنید.
موفق باشید.

mazoolagh
چهارشنبه 07 تیر 1391, 11:11 صبح
این پست ها رو برای شما نگذاشتم بلکه برای کسانی هست که به این تاپیک سر میزنن و ممکنه با مطالب نادرست شما گمراه بشن

مشکل شما هم در جای دیگه ای هست و بهتره با مطالعه مفاهیم ابتدایی بانک و امنیت و اکسس و اس کیو ال و همچنین یاد گرفتن استفاده از گوگل و جستجو در انجمن پاسخ پرسشهای بدیهی رو پیدا کنین!

موفقیت رو هم برای خودتون آرزو کنین که سخت بهش نیاز دارین

AfraAfra
چهارشنبه 07 تیر 1391, 12:27 عصر
جناب متخصص
آدمهایی که مشکلشون رو مطرح می کنن تا راه حلی پیدا کنن مردم رو گمراه می کنن؟ یا شما که در پاسخ به حل مشکل بدون راه حلی منطقی فقط کلی گویی می کنین تا شاید به هر بهونه ای در هر تاپیکی حضور داشته باشید؟ شما مثل خیاطی می مونین که مشتری بهش می گه برای من پیراهن بدوز ولی رنگ پارچه اش مشکی نباشه چون رنگش خیلی تیره است و اعصابم رو می ریزه بهم و شما به مشتری می گید این رنگ از نظر شما خیلی تیره است از نظر من تیرگی یه چیز دیگه است ضمن اینکه مشکی رنگ عشقه چرا اعصابتون می ریزه به هم؟!!!!!!!!!!!!
باز هم موفق باشید