خسته نباشید
میخواستم بدونم چطور میشه استفاده از تیبل ها و کوئریهارو به فرمها و ریپورتها محدود کرد
خسته نباشید
میخواستم بدونم چطور میشه استفاده از تیبل ها و کوئریهارو به فرمها و ریپورتها محدود کرد
چرا کسی جواب منو نمیده؟
اینجا که جواب نمیدید
وقتی هم که PM میذارم میگین تاپیک بذار
؟!؟!
دوست عزیز اگر جواب نمیگیری به 2 علته
1- سوالتو خوب مطرح نکردی
2- کسی جواب رو بلد نیست
البته با وجود فضلایی که در اینجا وجود دارند احتمال با مورد اول است
ایشان چون تازه به جمع ما پیوستند بنابراین طبیعی هست که انتظار دارند هرگونه سوالی که مطرح کردند بلافاصله پاسخ را دریافت کنند!
لذا بهترین جواب را هم دوستان خوبمان ارائه دادند که ممکنه سوال بخوبی مطرح نشده باشه یا اینکه کسی جواب را بلد نباشه...
اگه فایل شما mde بشه که نمیشه فرم یا گزارش طراحی کرد
شاید منظور ایشان از محدودیت جلوگیری از تغییرات در فرم و گزارش است که یا میخواهند دلیل محدودیت تغییرات در فرم یا گزارش فایل موردنظرشان را بدانند و یا در نظر دارند محدودیت ایجاد کنند که در هر دو حالت همانطور که اشاره شده در اکسس دسکتاپ فایلهایی که فرم و گزارش شان محدودیت تغییرات دارند را MDE میکنند
مجددا سلام
ببینید من یه دیتا بیس دارم با 8 جدول و حدود 180 کوئری و حدود 80 - 90 فرم که بوسیله فرمها و استفاده از اطلاعاتی که در VBA داشتم برای دیتا بیسم سطح دسترسی با پسورد شناور درست کردم. در ضمن allow bypasskey دیتا بیس هم فالس کردم. (چون برنامه روی شبکه هست و کاربران مختلف ازش استفاده میکنن) و به این ترتیب هرکس که از برنامه استفاده کنه فقط از فرمها و فیلدهای مجاز میتونه بهره ببره. ولی مشکل:
هرکس که بخواد میتونه از طرق مختلف به جداول و در نتیجه کل اطلاعات دسترسی داشته باشه. مثلا با ایمپورت کردن جداول من توی یک دیتا بیس جدید.
میخوام استفاده از جداول رو فقط به فرمهام محدود کنم. یعنی کسی جدولی نبینه.
متشکرم.
ممنون از توجه شاپرک ولی
اولا هیدن که خوب هیچی
ثانیا در مورد کانکت کردن دو دی بی شما یک فرم دو فیلدی داری که کانکتش کردی به یک جدول تو یک دیتا بیس دیگه
اما 80-90 فرم و 60-70 ریپورتی که همه سورساشون کوئری هستند رو چی پیشنهاد میکنید؟
درضمن مشکل ما امنیت هست. وقتی روی فایل سرورت پسورد بگذاری دیگه کار نمیکنه.
جدا از اینکه بدون پسورد هم باگ کمی نداره.
- اگه به عنوان برنامه دقت میکردید همین بود : "مثال خیلی ساده "
- برای سورس کوری ها باید Select بنویسی .
- با پسورد هم کار میکنه و هیچ مشکلی نداره فقط باید تو کانکشنت دستور مربوط به پسورد رو اضافه کنی .
- در مورد امنیت اکسس خیلی بحث شده .. اکسس نمیتونه مثل SQL امنیت داشته باشه .
- توی اکسس شما نمیتونین از اکسپورت کردن جداول جلوگیری کنید .
ok
پس از یه مسیر دیگه تست میکنیم
اگه بخواهیم فایل رو آپسایز کنیم و تیبل هارو بفرستیم تو SQL Server :
آیا فایل دیتا بیس همنی هست که فرمتش MDF?
اگر بله چطور میشه روی مسیر MDF کنترل داشت؟
و چطور میشه روش پسورد گذاشت؟
ساختار sql و access از نظر نحوه ذخیره سازی و بازیابی داده ها کاملا متفاوته شما اگر upsize کردی عملا کاری به محل فیزیکی ذخیره سازی داده ها نداری (مگر هنگام طراحی بانک داده)
در مورد اکسس هیچ راه حل جامعی برای اعمال سطح دسترسی در رویت جداول امکان پذیر نیست.در صورت نیاز میتوانید از hash کردن مقادیر هنگام ذخیره و بازیابی استفادهکنید.(در صورت اتقال حجم زیاد داده در هر واکشی در شبکه پیشنهاد نمیکنم)
من سطح دسترسی رو بوسیله vba درست کردم تو این قسمت مشکلی نیست.
فقط میخوام اگه جداول تو اکسس هست محدودشون کنم به فرمها یا اگه تو SQL Server هست فایل دیتابیسش رو بذارم رو سرور همین
من اصلا چیز پیچیده ای نمیخوام.
درضمن از توجه همه متشکرم.
با توجه به یکسری مسائل از permision نمیتونم استفاده کنم.
به هر حال من برای کمک گرفتن از SQL Server هم آمادگیم رو اعلام کردم. راهنمائیم کنید لطفا
یعنی بشه جداول رو برد توی SQLServer و از اکسس لینکشو خوند
البته این کار رو هم کردم و شد.
فقط Add نمیکنه
جدوال و کوئری ها رو مخفی کن
شیفت رو قفل کن
فایل رو mde کن
نه امپورت میشه نه اکسپورت
keybyepass فالس شده
mde هم کردم
hidden هم اگر اکسس هرکسی show hidden فعال باشه موقع امپورت نشونشون میده
باز هم دقت بیشتر کنید مجدد عرض میکنم.
ساختار sql(در صورت اسباب کشی به آن) با اکسس کاملا متفاوت است. ایجاد یم بانک داده بر رئی sql عملا به معنای ایجاد امکان بهره برداری از بانک داده در شبکه است.لزومی به کنترل سطح دسترسی به فایلهای ذخیره شده توسط sql نیست.
اگر خیلی حساس هستید تمام داده ها را hash شده ذخیره کنید.
بر خلاف اکسس در صورت تنظیم مناسب sql امنیت در آن کاملا متقاعد کننده است.
و اعمال سطوح دسترسی هیچ ربطی به فایل روی hdd و سطح دسترسی آن ندارد.
-نکته: نمایش یا select query از جداول خود یک سطح دسترسی دارد
MM Mofidi
چطور این "اسباب کشی" رو انجام بدم؟
من توی SQL Server یک دیتا بیس جدید ساختم بعد داول رو از تو اکسس ایمپورت کردم تو این دیتا بیس SQL Server بعد جداول رو از تو اکسس پاک کردم بعد لینک تیبل کردم به جداول ریتا بیس SQL Server و همه چیز درست کار کرد همونطور که میخواستم فقط دیگه رکورد جدید اضافه نکرد!
بهترین راه اسباب کشی استفاده از upsizing wizard است نه روشی که استفاده کرده اید.
برای ثبت رکورد جدید وجود دسترسی های مربوطه را چک کنید.
کاربری که به sql متصل میشود چه کاربری است؟ سطح دسترسی به بانک داده برای اعمال چه کارهایی دارد.
در صورت عدم آشنایی با sql به کتاب های آموزش گام به گام یا سوالات مطرح شده قبلی در همین انجمن در این باب مرتاجعه کنید
آخه اول upsize میشد ولی الان ارور میده که باید تو SQLServer لاگین کنی
در صورتی که اگه لاگین نباشم که از روشی که گفتم هم نمیش کانکت شد ÷س لاگین هستم!!!!
من مجددا موفق شدم آپسابز کنم و الان درست کار میکنه
فقط مشکل اینه که چطور میشه دیتا فایلش رو رو شبکه استفاده کرد؟
شما باید به sql سرور متصل بشی و استفاده کنی چیزی بنام دیتا فایل معنا نداره شما عملا نم سرور ،نام کاربری و کلمه عبور داری کاری با موقعیت فیزیکی فایل نخواهی داشت.
در صورت تغییر هریک از مشخصات بالا باید جداول مجدد لینک شود یا لینک آنها اصلاح شود. نمونه کد برای اینکار همینجا هست بگردی پیدا میکنی
خوب مشکل هم همینه که برنامه قراره رو سرور شبکه باشه
سرور شبکه هم نمیتونه سرور اس کیو ال باشه چون سیستم عاملش اصلا ماکروسافت نیست "Novell" هست
بنا بر این من یک دیتا فایلی لازم دارم که همینجوری نشه بازش کرد و فقط بشه با فرمهای تو اکسس و بدون نیاز به یه سروری مثل اس کیو ال سرور بازش کرد.
امکانش هست بسته به نسخه novell مورد استفاده(قاعدتا روی 2و 3 نمیشه :))
ولی شما میتونید یک sql روی یک سرور ویندوزی نصب کنید یک dataserverجدید به شبکه تون اضافه کنید
ok
من این کار رو کردم
یعنی یک سیستم رو اختصاص دادم به سرور اسکیو ال
و فایل اکسس هم که دیگه تیبل نداره و فقط لینک به اسکیو ال داره رو سرور شرکت قرار داره
حالا از سیستمی که سرور اسکیو ال شده مشکی نیست ولی وقتی کلاینت ها بخوان استفاده کنن نمیتونه به سرور اسکیو ال کانکت بشه
کجا باید برای کلاینت ها سرور رو معرفی کرد (ترجیحا بدون نیاز به نصب اسکیو ال سرور روی اونها طبق نظر خودتون که تلفنی فرمودید)
بازهم از همکاری شما متشکرم جناب مفیدی
یعنی عملا دیگه هیچ ربطی به سرور ناول نداره و سرور ناول فقط فایل اکسس رو که داره کار اپلیکیکیشن رو انجام میده نگهداری میکنه
و حالا باید برای دیگر کامپیوتر ها (کلاینت ها) تعریف کنم که از ورک گروپ ماکروسافتی شرکت برن توی کامپیوتری که سرور اسکیو ال شده و تیبل رو بخونن همین
حالا چطوریشو نمیدونم