اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

حل بسيط لمشكلة زيادة حجم قاعدة بيانات اكسس


Elsayed Bn Gemy

الردود الموصى بها

21 ساعات مضت, عبد الله قدور said:

1- امكانية انشاء قاعدة بيانات جديدة sql والاتصال بها برمجيا (وذلك بسبب أن برامج المحاسبة تحتاج الى قاعدة بيانات جديدة لكل سنة)

امكانيات قاعدة بيانات sql الكبيرة تغنيك عن هذا الجهد الجهيد في فصل بيانات كل سنة عن الأخري انظر هذه المقارنة بين اصدارات الاسكيوال سرفر المختلفة من موقع مايكروسوفت والسعة الرهيبة التي يمكن أن تتحملة الاصدارات الأحدث 

الميزات

SQL Server 2017 Enterprise

SQL Server 2017 Standard

SQL Server 2017 Express

SQL Server 2017 Developer

التوسع

       

الحد الأقصى لعدد المراكز

غير محدود

24 مركزًا

4 مراكز

غير محدود

الذاكرة: الحد الأقصى لحجم الذاكرة المجمعة المؤقتة لكل مثيل

أقصى سعة بنظام التشغيل

128 غيغابايت

1410 ميغابايت

أقصى سعة بنظام التشغيل

الذاكرة: الحد الأقصى لذاكرة التخزين المؤقت لشريحة الذاكرة الداخلية لكل مثيل

أقصى سعة بنظام التشغيل

32 غيغابايت

352 ميغابايت

أقصى سعة بنظام التشغيل

الذاكرة: الحد الأقصى لبيانات الذاكرة المحسنة لكل قاعدة بيانات

أقصى سعة بنظام التشغيل

32 غيغابايت

352 ميغابايت

أقصى سعة بنظام التشغيل

الحد الأقصى لحجم قاعدة البيانات

524 بيتابايت

524 بيتابايت

10 غيغابايت

524 بيتابايت

حقوق الاستخدام الإنتاجي

RE4tl6o?ver=b724&q=90&m=6&h=15&w=15&b=%2 RE4tl6o?ver=b724&q=90&m=6&h=15&w=15&b=%2 RE4tl6o?ver=b724&q=90&m=6&h=15&w=15&b=%2 RE4tpGe?ver=d0e6&q=90&m=6&h=15&w=15&b=%2

 

وهذا هو الرابط لاستكشاف المزيد https://www.microsoft.com/ar-sa/sql-server/sql-server-2017

علي حسب رأيتي القاصرة التعامل مع قاعدة واحدة تضم كل التسلسل التاريخي للبيانات سيكون أسهل في التعامل من الناحيتين البرمجية والاستخدام - فبدل من عمل ربط بالقاعدة القديمة لاستدعاء البيانات بالسنوات السابقة وعمل نسخة احتياطية لكل سنة وتفريغ البيانات من القاعدة القديمة و.... لماذا كل هذا الجهد !!!!!!!!! في حين أن بياناتي جميعها قديمها وحديثها بمكان واحد اغدو بها وأروح كيفما أشاء واستعرض منها ما أريد (وأكثر تأمينا للبيانات التي ستكون عرضة للفقد او التلاعب!) هذا والله أعلم 

 

 

  • Like 1
رابط هذا التعليق
شارك

في ١٢‏/١‏/٢٠٢١ at 22:21, عبد الله قدور said:

السلام عليكم ورحمة الله وبركاته

وعليكم السلام ورحمة الله وبركاته

حياكم الله جميعا

اخي الكريم @Elsayed Bn Gemy

فكرة رائعة جدا لكنا نحتاج الى عدة امور تدعم هذه الفكرة منها

1- امكانية انشاء قاعدة بيانات جديدة sql والاتصال بها برمجيا (وذلك بسبب أن برامج المحاسبة تحتاج الى قاعدة بيانات جديدة لكل سنة)

  بالنظر الى سؤالك اخى الكريم ستجد نفسك مشتت فى اكثر من جهة  وستحتاج الى مجهود جبار انت تريد انشاء قاعدة  Sql برمجيا تحتاج الى كود لانشاء كل جدول بقاعدة البيانات واختيار انواع الحقول بدقة نظرا لحساسية sql لنوع الحقول  وياجبذا لو تمتكل 20 جدول مثلا ستجد نفسك تضيع وقتك وجهدك 

امامنا خيران اذا سمحت ليه
الاول وهو البقاء على قاعدة البيانات كما هي دون تغييرها نظرا لانك لن تحتاج الى تغييرها بسم الحجم او ماشابه ذلك بسب تلك المشكلات التى تواجه الاكسس

الخيار الثانى اذا كنت مصمم على التغيير فيكفى ان تحتفظ بقاعدة بياناتك فارغة واستبدالها بالقاعدة القديمة مع مراعاة نفس الاسم ونفس اصدار  Sql

وان واجهك مشاكل فى ادراجها على السيرفر فاليك الاتى
 قم بانشاء ملف .*txt  فارغ وقم بحفظه بامتداد (.udl)  سيظهر لك بهذه الصورة


Capture336.PNG.c80786e1c63d4543106563407def46d8.PNG

 ثم قم بفتحه سيظهر لك هذه النافذه

Capture33.PNG.3bbe20e592c2dc8101a84b3fae813040.PNG

ثم اضغط next

Capture88.PNG.2cf98c77976e2c2284b1826cb936281f.PNG

وطبعا انت عارف الباقى
اختار السيرفر  واعمل Attach  لقاعدة بيانتاتك


خلى بالك من المهم بقى ودا هتحتاجه بعدين لسؤولك الاخير  وهو اضافة سجلات للجدول دون الحاجة الى ربط الجداول

احفظ بياناتك وكدا القاعدة بقت على السيرفر

 

في ١٢‏/١‏/٢٠٢١ at 22:21, عبد الله قدور said:

2- امكانية النسخ الاحتياطي للقاعدة واستعادة النسخة الاحتياطية برمجيا

لما الحاجة الى ذلك برمجيا اذا كنت تستخدم   Sql mangment   فهو يوفر لك تلك الخاصية
اطلع الى الرابط التالي
 ستجد ما تريد 

https://blogs.sap.com/2019/11/15/scheduled-automatic-sql-database-backup-using-ssms/

3- يوجد في قواعد بيانات sql ميزة انشاء function بحيث ترسل الامر الى القاعدة عن طريق الاتصال بالفنكشن الموجود بقاعدة بيانات sql ، يا ترى اكسس يستطيع الاتصال بها ؟؟؟

طبعا هذه الميزة توفر جهد كبير في ادخال البيانات وتعديلها واستدعائها من قاعدة البيانات و تعطي سرعة في العمل على الشبكة

4- اخيرا اخي العزيز من خلال بحثي على اليوتيوب عن هذا الموضوع وجدت فيديو لادخال البيانات وتعديلها من الاكسس الى sql بدون ربط الجداول حسب ما فهمت من الفيديو ، لكني للأسف لم استطع تطبيق ذلك


نعم يمكنك الاتصال بقاعدة Sql  برمجيا دون الحاجة الى ربط الجداول
فقط ستحتاج الي البيامنات التالية
اسم السيرفر
اسم قاعدة البيانات

 ويمكنك الاتصال عن طريق هذا الكود


 Dim conn As New ADODB.Connection
  
        conn.Open "Provider=SQLOLEDB;" & _
            "Data Source=.\SQLEXPRESS;" & _
            "Initial Catalog=MyDbVb;" & _
            "Integrated Security=SSPI;"

            conn.Execute "Insert into dbo.Customers (Customer, Adress) " & _
                         "values ('" & "Elsayed" & "', '" & "Egypt" & "')"

        MsgBox "Customers imported."

        conn.Close
        Set conn = Nothing

طبعا "Data Source=.\SQLEXPRESS;"  هو اسم السيرفر

 "Initial Catalog=MyDbVb;" & _    هو اسم قاعدة البيانات

---------------
 ----- ملحوظة بسيطة  فاكر الملف التكست دا
Capture336.PNG.c80786e1c63d4543106563407def46d8.PNG

 افتحة بالمفكرة بعد ما تحفظ فيه بياناتك
هيطلعلك جملة الاتصال اللى موجودة بالكود السابق  بهذا الشكل


Captureddf.PNG.f9f3b1bd78eed331921787a2ae176ecc.PNG

شكرا لكم

 

 

  • Like 1
رابط هذا التعليق
شارك

16 hours ago, أبو عبدالله الحلوانى said:

ممكن حضرتك تجرب أن تفتح الجدول فقط بدون النموذج وتضيف به سجل معين وتخبرني بالنتيجة لو سمحت (ولو تكرمت ترفق صورة من رسالة الخطأ التي ستظهر ان حدث خطأ)

نعم يمكنني اضافة السجلات بشكل عادي وقد تم حل المشكلة والجداول مربوطة الان لكن المشكلة عند التعديل على السطر  او حذفه تظهر لي هاته الرسالة 

عند الحذف في الفورم يظهر بهاذا الشكل 

Untitled11.png

 

وفي الجدول بهاذا الشكل 

Untitled12.png

لو تكرمت هل يمكنني التواصل معاك على الخاص لارسال لك الملف التنفيذي لانه خاص و لتتوضح المشكلة اكثر

تم تعديل بواسطه AliAli47
رابط هذا التعليق
شارك

8 ساعات مضت, AliAli47 said:

وفي الجدول بهاذا الشكل 

قد وقعت بمثل هذه المشكلة من قبل وتم الحل بفضل الله بعد اضافة عمود الطابع الزمني بجداول الـ sql server عمود جديد نوع بياناته timestamp

راجع هذا الموضوع

 

 

رابط هذا التعليق
شارك

6 minutes ago, أبو عبدالله الحلوانى said:

قد وقعت بمثل هذه المشكلة من قبل وتم الحل بفضل الله بعد اضافة عمود الطابع الزمني بجداول الـ sql server عمود جديد نوع بياناته timestamp

راجع هذا الموضوع

 

 

اشكرك جزيل الشكر 

لقد تبقى لدي مشكل واحد وهو الفلترة 

عندما تكون القيم في الجدول باللغة العربية الفلترة لا تعمل وكل قيم الجدول تختفي عند تحديد معيار للفلترة 

وتشتغل بشكل عادي عندما تكون القيمة مكتوبة بأحرف لاتينية

المشكلة ظهرت عند استعمال azure sql

اظن ان المشكلة في utf-8 غير مدعومة في azure 

هل من حل لتفادي هاذه المشكلة ؟ 

رابط هذا التعليق
شارك

21 ساعات مضت, Elsayed Bn Gemy said:

وان واجهك مشاكل فى ادراجها على السيرفر فاليك الاتى
 قم بانشاء ملف .*txt  فارغ وقم بحفظه بامتداد (.udl)  سيظهر لك بهذه الصورة

الله عليك يابطل وينك من زمان وحشانا ها الطلة (وبالعربي حمدا لله علي سلامتك 🙂)

ولكن هل لهذا الملف صلاحيات علي الجهاز الكلينت client 

فهذا يمثل ثغرة أمنية خطيرة ان استطاع الجهاز الكلينت الوصول الي السرفر بهذه الطريقة 😰

وجزاكم الله خيرا 

رجاءا لا تغب عنا كثيرا - أو اترك لنا عناوينك بالمنتديات الأخري كي نتتبعك 😁

رابط هذا التعليق
شارك

20 دقائق مضت, AliAli47 said:

اظن ان المشكلة في utf-8 غير مدعومة في azure 

 

راجع هذا من مايكروسوفت لعله يساعدك

وهذا

رابط هذا التعليق
شارك

1 ساعه مضت, أبو عبدالله الحلوانى said:

الله عليك يابطل وينك من زمان وحشانا ها الطلة (وبالعربي حمدا لله علي سلامتك 🙂)

ولكن هل لهذا الملف صلاحيات علي الجهاز الكلينت client 

فهذا يمثل ثغرة أمنية خطيرة ان استطاع الجهاز الكلينت الوصول الي السرفر بهذه الطريقة 😰

وجزاكم الله خيرا 

رجاءا لا تغب عنا كثيرا - أو اترك لنا عناوينك بالمنتديات الأخري كي نتتبعك 😁

اخي الكريم ابو عبد الله حياك الله

للاسف هذه هي طبيعة ملفات UDL ، لا يمكنهم تخزين كلمة المرور مشفرة  انا لجأت للملف دا من تبسيط الامر على المستخدم
ولكن اذا كانت قاعدة بياناتك  Sql  فى مسار معين وتريد اضافتها للسيرفر دون اللجوء الى ملف ‘UDL فقط ستحتاج الى تغير الكود السابق

 استبدل هذا السطر

            "Initial Catalog=MyDbVb;" & _

بالسطر التالي
 

            "AttachDbFilename=D:\MyDbVb.mdf;" & _

 وهو مسار قاعدة البيانات الخاصة بك
 

رابط هذا التعليق
شارك

33 دقائق مضت, Elsayed Bn Gemy said:

لا يمكنهم تخزين كلمة المرور مشفرة :blink: انا لجأت للملف دا من تبسيط الامر على المستخدم

جزاك الله خيرا

- ولكن بهذا وجود مثل هذا الملف بأجهزة المستخدمين (بمثابة وجود البنزين بجوار النار :biggrin: )  خاصة المستخدمين المشاغبين

وتكون كل المحاولات لتأمين قواعد البيانات راحت سدا 

- أعتقد أن استخدام الـ sql server managment لعمل الـ Attach و dettach أكثر أمنا حيث لن يخول بعمل ذلك الا لمن له حق الوصول الي السرفر.

ولكن السؤال الأهم هل يمكن أن يتم استخراج ملف UDL هذا بطريقة برمجية بأي وسيلة من الوسائل؟ (يعني يمكن اختراق قاعدة البيانات من خلاله بشكل برمجي؟؟!!)

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information