مشروع قواعد بيانات من الالف إلى الياء للأجهزة المحمولة
#1
تمت المشاركة 29 November 2005 - 05:59 PM
فقد رأيت أنه في المنتدى تطرح الكثير من الاسئلة و لا أجوبة او تكون اجوبة غير شافية
لذا قررت أن يكون هذا البرنامج قاعدة ينطلق منها من ببرمجة البوكت
اتمنى ان تقدم المشاركات و الملاحظات فقط و ان تطرح الاسئلة في مواضيع منفصلة حتى يتم الهدف
و منذ الان فإنني اخبركم بأني لن اعدكم بإتمام المشروع حتى النهاية
فربما تمر ظروف او امور تمنعني من ذلك و لكنني يأقوم بما ييسره الله لي
و منذ الغد إن شاء الله ستكون اول مشاركة عملية
#2
تمت المشاركة 30 November 2005 - 10:00 AM
و لكن ما هي قواعد البيانات التي تستخدم على pocket pc هل هي Sql Server ce
ام هناك Access ام يتم الاعتماد على ملفات Xml لتخزين البيانات
هل سوف تستخدم VS.net لعمل التطبيق
سوف اكون معك في هذا المشروع
و إن شاء الله سوف اتعلم كيف يتم برمجة قواعد البيانات على ال Pocket pc
و شكرا لك
و ارجوا الأفادة الى الجميع
#3
تمت المشاركة 30 November 2005 - 05:19 PM
برمجة البوكت هي مجال جديد من البرمجة انتشر مع انتشار الاجهزة المتنقلة (Mobile Devices)
لكنها تختلف عن البرمجة العادية بعدة نواح من أهمها اعتبارات الاداء و استهلاك الذاكرة و الحجم المستغل لمساحة التخزين نظرا للإمكانيات المحدودة للأجهزة المتنقلة مقارنة بالحواسيب الشخصي
يضاف إلى ذلك صغر المساحة المتاحة للعرض على الشاشة مما يتطلب دقة في تصميم واجهات البرنامج حتى تستغل كل نقطة على النموذج بأفضل شكل ممكن .
لغات البرمجة :
بشكل عام و بسبب محدودية أنظمة التشغيل المتاحة على الاجهزة المتنقلة لا يمكن تشغيل البرامج التنفيذية التقليدية على الاجهزة المتنقلة لكن توجد عدة لغات برمجة خاصة بالأجهزة المتنقلة من اشهرها :
لغة Embedded C++ و هي المقابل للغة C++ و ما تزال مدعومة من Microsoft و تعتبر من أقوى اللغات في هذا المجال.
لغة Embedded Visual Basic و هي المقابل للغة البرمجة Visual Basic تعتبر من اللغات السهلة
و البسيطة لإنشاء تطبيقات الاجهزة الجوالة . لكن توقف دعم هذه اللغة من Microsoft أي انه لن تطرح
اية اصدارات أو تحديثات لها
و قد اتاحت Microsoft هاتين اللغتين بشكل مجاني منذ فترة قريبة .
تقنية .Net : بإصدار Microsoft لـ .NET Framework حدثت ثورة في مجال تطوير البرمجيات
و قد طالت هذه الثورة مجال تطوير برامج الأجهزة المتنقلة حيث اطلقت Microsoft بعد فترة من اصدارها إطار العمل الخاص بالحواسيب الشخصية , اطارا خاصا بالإجهزة المتنقلة يدعى .NET Compact Framework او اختصاراً .NET CF , اتاح هذا الاطار لمبرمجي Visual Studio .NET إمكانية تطوير تطبيقات للأجهزة المتنقلة , فقد اتاحت Microsoft على موقعها تحديثا يمكن مبرمجي VS.NET 2002 من تطوير هكذا برمجيات و من ثم جاء VS.NET 2003 متضمنا لإمكانية تطوير برمجيات الاجهزة المتنقلة
و الان يأتي VS.NET 2005 مرفقا بالاطار .NET Compact FrameWork في اصدارته الثانية
و التي تعد بكثير من المزايا.
قواعد البيانات المتاحة :
يمكن تخزين البيانات على الاجهزة المتنقلة بعدة صيغ ابسطها تخزين البيانات في ملفات نصية
كما يمكن استخدام ملفات XML و قد قدمت Microsoft مع اصدارة ُEmbedded Studio أي(EVB+EC)
نسخة خاصة من ADO تدعى ADOCE و هي نسخة سهلة الاستخدام تتيح الكثير من الامكانيات لكن الدعم الخاص بها قد توقف أيضا , بعد ADOCE جاء اطلاق Microsoft لـ SQL SERVER CE
و التي كما يتضح من اسمها نسخة خفيفة من SQL SERVER و بإمكانيات محدودة لكنها تمتلك من المزايا ما يكفي لتطوير تطبقات كبيرة نسبيا حيث ان حجمها قد يصل إلى 2 جيغا بايت , و يبدأ دعم SQL CE بدأاً من
الاصدارات Window Pocket 2000 و Windows CE 3 , و يرفق VS.NET 2003 بالاصدار
SQL SERVER CE 2 , و مع إصدار VS.NET 2005 صدرت النسخة الثالثة و التي أصبحت تدعى
SQL SERVER MOBILE .
ملاحظة : لم اتطرق إلى إلى برمجة أجهزة PALM حتى لا يطول الموضوع إضافة إلى ما تعانيه برمجة PALM من صعوبات فمثلا لا يجب أن يتجاوز حجم التطبيق 64 KB و بالتالي يجب تقسيم التطبيقات الكبيرة إلى أجزاء.
سيعتمد المشروع على Visual Basic .NET 2003
و على قواعد البيانات SQL SERVER CE 2
لسببين
الأول أن الإصدارات الجديدة لا يملكها كل الناس
الثاني : أنني ما أزلت استكشف الجديد في تلك الاصدارات
#4
تمت المشاركة 01 December 2005 - 05:55 PM
للبدء بالمشروع لابد من تنصيب SQL SERVER CE 2 على الجهاز المتنقل
يتم هذا بطريقتين :
الأولى : عندما تنشأ مشروعا يعتمد على قواعد البيانات في VS.NET 2003 فإنه وعند ترجمة التطبيق
و من ثم نشره من خلال مربع اختيار وجهة نشر التطبيق فإن VS.NET يقوم بتفحص الهدف الذي سينشر إليه التطبيق فإذا لم تكن قاعدة البيانات موجودة يتم تنصيبها طبعا يحث هذا فقط في المرة الأولى لنشر البرنامج
قلنا ان هذا يحدث عند انشاء مشروع يعتمد على قواعد البيانات
اذا كيف اجعل مشروعي يعتمد على قواعد البيانات ؟
يتم ذلك عن طريق استيراد فضاء الاسماء System.Data.SqlServerCe إلى المشروع
و يتم ذلك كما يلي اذهب إلى القائمة Project ثم انقر على Add Reference بعد ذلك
اختر System.Data.SqlServerCe

الان افتح شيفرة برنامجك و اكتب في ترويسة الشيفرة
Imports System.Data.SqlServerCe
تهانينا لقد أصبح برنامجك قادرا على التعامل مع قواعد البيانات
الطريقة الثانية للتنصيب :
في الدرس القادم
تم تعديل هذه المشاركة بواسطة walcom: 20 September 2007 - 03:33 PM
سبب التعديل:: تعديل ترتيب علامات [img] و [/img]
#5
تمت المشاركة 05 December 2005 - 07:08 PM
كيف أنشأ قاعدة بيانات و استعرض جداولها على البوكت
لإنشاء قاعدة بيانات نكتب ما يلي في البرنامج
Dim as filePath as string ="\My Documents\BookStores.sdf"
Dim eng As SqlCeEngine
Try
eng = New SqlCeEngine("Data Source=" & filePath)
eng.CreateDatabase()
Return True
Catch e As SqlCeException
MessageBox.Show("فشلت عملية إنشاء القاعدة" & Convert.ToChar(13) & filePath, "", _ MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1)
Finally
eng.Dispose()
End Tryللتأكد من إنشاء القاعدة اذهب إلى المسار المحدد و ستجد ملفا له الاحقة
sdf
هو ملف القاعدة لكنك لن تجد شيئا بداخله حيث أننا لم ننشأ الجداول بعد
تم تعديل هذه المشاركة بواسطة بن العيد: 19 December 2007 - 06:34 PM
#6
تمت المشاركة 06 December 2005 - 06:23 PM
الان علينا ان ننشا الجداول و الحقول في قاعدتنا
باختصار إليكم المثال التالي المبني بالسي شارب و تحويله إلى فيجوال سهل
و الذي
يقوم بإنشاء قاعدة و تحميل البيانات إليها من ملف XML
بعد هذا الدرس اصبح بإمكاننا إنشاء القاعدة و الجداول فيها
في الدرس القادم سنبدأ بتحليل البرنامج و تصميم قاعدته
لكنني آمل أن يشاركني الأخوان فأنا أحس كأنني في هذا المنتدى
أكلم نفسي
يا إخوان شاركوا تفاعلوا و لا تنتظروا مني أن أقدم لكم كل شيء
الملفات المرفقة
-
Example.zip (22.5K)
عدد مرات التحميل: 1190
#7
تمت المشاركة 24 December 2005 - 07:34 PM
لكن اعذروني بضعة ايام فلقد اقترب موعد تسليم
برنامجي جدا جدا و انا اعمل ليل نهار
لكن سأحاول ان اقدم بعض المقالات
ريثما اتمكن من التفرغ لكتابة الدروس
المقال التالي يشرح كيفية تنصيب SQL SERVER CE
الملفات المرفقة
-
Installing_SQL_Server_2000_for_Windows_CE.pdf (320.47K)
عدد مرات التحميل: 1987
#8
تمت المشاركة 01 February 2006 - 10:21 PM
سنتابع في هذا الدرس ما بدأناه سيكون هذا الدرس صغيرا لكن أعدكم بدءا من الدرس القادم ستكون المقالات اكثر توسعا و تفصيلا
سيكون برنامجنا عبارة عن دليل للهاتف يمكن من خلاله حفظ و تعديل و حذف المشتركين إضافة إلى إمكانية البحث بحسب الرقم أو الاسم أو الكنية
الفكرة بسيطة لكنها تحوي العناصر الأساسية لبرامج قواعد البيانات من تخزين و تعديل و حذف و بحث
كنت أود ان تكون الفكرة أكبر لكن هذا جيد لكم كبداية
اذا ستتألف قاعدتنا مما يلي :
جدول لحفظ المشتركين و أرقامهم و عناوينهم
جدول لحفظ المحافظة و رمزها الهاتفي
الجدول الأول
سيكون اسم الجدول PhoneBook و سيتألف من الحقول التالية :
UserID : رقم متسلسل للمشترك طبعا لم استخدم رقم الهاتف كحقل فريد لإننا نريد حفظ الارقام على مستوى عدة محافظات
و بالتالي قد تتكرر الارقام .
UserFirstName الاسم الاول للمشترك
UserLastName كنية المشترك
UserFatherName اسم والد المشترك
UserPhoneNumber رقم هاتف المشترك
UserState محافظة المشترك
UserAddress عنوان المشترك
الجدول الثاني :
سيكون اسم الجدول States و سيتألف من الحقول التالية :
StateCode : رمز المحافظة
StateName : اسم المحافظة
#9
تمت المشاركة 01 April 2006 - 06:56 AM
الان فلنقم بانشاء قاعدة البيانات :
تقوم الدالة التالية بانشاء قاعدة البيانات حيث انه ما علينا إلا ان نمرر لها المسار الذي سيتم إنشاء القاعدة فيه
طبعا قاعدة البيانات SQL SERVER CE 2.0 هي عبارة عن ملف يملك الاحقة (SDF) .
Public Function CreateDB(ByVal filePath As String) As Boolean
Try
If File.Exists(filePath) Then
File.Delete(filePath)
End If
Catch ex As Exception
MessageBox.Show("Can not Delete" & filePath)
End Try
Dim eng As SqlCeEngine
Try
eng = New SqlCeEngine("" & filePath)
eng.CreateDatabase()
Return True
Catch ex As Exception
MessageBox.Show("Can not Create the Database" & filePath)
Return False
Finally
eng.Dispose()
End Try
End Functionملاحظة : لا تنس استيراد فضاءات الأسماء التالية :
Imports System.IO
Imports System.Data.SqlServerCe
ملاحظة : في SQL SERVER MOBILE (النسخة الأحدث من SQL SERVER CE 2.0) يمكنك انشاء القاعدة و استعراضها و إدخال بيانات إليها و اختبار الاستعلامات على كمبيوترك الشخصي من خلال بيئة VS.NET .
ملاحظة : تمتاز SQL SERVER CE 2.0 بما يلي :
- إمكانية إنشاء 249 فهرس لكل جدول , و يمكن فهرسة اكثر من عمود
- يمكن ان تصل سعة قاعدة البيانات إلى 2GB
- يمكن إنشاء 255 عمود في الجدول الواحد
- يمكن ان يصل طول الاسماء فيها إلى 128 محرف
- تدعم قيم NULL
- دعم DML و DDL
- يوجد 17 نوع للبيانات بما فيها انواع يونيكود و GUID
- يوجد مفاتيح رئيسية و ثانوية
الان اصبح بإمكاننا انشاء قاعدة البيانات في الدرس القادم سنتعلم كيف ننشأ الجداول ضمن القاعدة
#10
تمت المشاركة 01 June 2006 - 12:58 PM
بصراحة انا توقفت عن الدروس بشكل مقصود
كان ذلك بدافع آخلاقي مني ( و ليس لأسباب أخرى حيث لا يوجد ما يمنعني ) تجاه شركتي السابقة في سوريا
و حتى لا يفسر أي شخص نيته سيئة ان طرحي لهذه الدروس هو بدافع الاساءة لشركتي السابقة حيث انها تعمل في هذا المجال
و خاصة ان اخر تطبيق كتبته لها كان في مجال موضوعنا هذا
لكن إن شاء الله سأعود لاستئناف هذه الدروس فأنا لم اقدم سوى رؤوس الاقلام و لا اعتبر نفسي إلا في مقدمة الموضوع الان
لذا سأعود و بشكل موسع اكثر بكثير مما كنت انوي طرحه
لكن بعد مدة اظن بأنها ستكون شهر او اكثر بقليل


تسجيل الدخول
التسجيل
المساعدة


ارجع للأعلى
متعدد الإقتباسات