منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[SQL] الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم دورات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=187)
+--- الموضوع : [SQL] الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر (/showthread.php?tid=16144)



الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - aliday03 - 14-06-16

السلام عليكم ايها الاخوة الكرام حياكم الله و اهلا و يهلا بكم في الدرس الاول من هاته السلسلة الجميلة الهادفة للرقي الى الاحتراف عن طريق التحكم في sql server من داخل الفيجوال بيسك.
هاته السلسلة سيكون فيها اشياء كثيرة و مفيدة و لن تكون فيها ملفات مرفقة لان في الاصل هو التعلم لا النسخ و اللصق الدي لن تتعلم منه اي شيء.
فهدفي اخي اختي في الله هو ان تفهم الكود و تطبقه على مثال عندك و تستفيد و تفهم و لا أريد منك شيئا إلى الدعاء لي و للوالدي هدا رجائي فلا تخيب رجائي.
هاته السلسلة ستتصمن الاتي
1-تعبئة الكومبوبوكس بأكماء السيرفر
2-اختيار طريقة الولوج اما windows authentication او sql server authentication
3-اسم المستخدم و كلمة المرور ادا كان الدخول ب sqlserver authentication
4-تعبئة الكومبوبوكس باسماء قواعد البيانات الموجودة داخل السيرفر المختار في الكومبوبوكس الاول
5-إظهار الجداول الموجودة داخل قاعدة البيانات المختارة
6-إظهار المشاهد views الموجودة داخل قاعدة البيانات المختارة
7-إظهار الاجراءات المخزنة  الموجودة داخل قاعدة البيانات المختارة
8-انشاء و حدف قاعدة بيانات جديدة من الفيجوال بيسك
9-انشاء و حدف جدول جديدة من الفيجوال بيسك
10-انشاء و حدف اجراءات مخزنة من الفيجوال بيسك
11-انشاء عمليات الاضافة و التعديل و الحدف اوتوماتيكيا
و اشياء اخرى سأضيفها عندما اتدكرها .
و اليوم ان شاء الله سنبدأ بالدرس الاول   (تعبئة الكوبوبوكس باسماء السيرفر)
هناك عدة طرق
      1- عن طريق ملف dll و هو تابع sql server  و دوره يدهب الى الريجيستري و يبحث عن اسماء السيرفرات و عيب هاته الطريقة هو التاخر بحيث تأخد تقريبا 15 الى 20 ثانية لجلب الاسماء
      2-عن طريق الريجيستري بمعنى نعطيه مسار الموجود فيه اسماء السيرفر فقط و هاته الطريقة جميلة جدا و خفيفة و سريعة
الفرق بين الطريقتين هو الطريقة الاولى انه يبحث في الريجيستري كله مما يؤدي الى التاخير و الطريقة الثانية نعطيه المسار المناسب فيدهب اليه مباشرة
حتى لا اطيل عليكم افتحوا مشروع جديد اي نسخة من الفيجوال بيسك لا تهم
داخل الفورم اضف كومبوبوكس و اعطه في name التابع له اسم comboserver
الان افتح module جديد و سمه ما تشاء
نبدأ بالطريقة الثانية السهلة المتلخصة في اعطاء المسار المناسب الموجود فيه اسماء السيرفرات
في مكان التصريحات العامة

Imports Microsoft.Win32

بعد دالك عمل اجراء sub


كود :
 Public Sub loadNameserver(ByVal combo As ComboBox)
       Try
           Dim localMachine = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64)
           Dim rk = localMachine.OpenSubKey("SOFTWARE\Microsoft\Microsoft SQL Server")
           Dim instances = CType(rk.GetValue("InstalledInstances"), String())
           If instances.Length > 0 Then
               For Each element As String In instances
                   If element = "MSSQLSERVER" Then
                       combo.Items.Add(System.Environment.MachineName)
                   Else
                       combo.Items.Add(System.Environment.MachineName + "\" + element)
                   End If
               Next element
           End If
       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try

   End Sub

بعد دالك تستدعي الاجراء داخل form_laod

تكتب الاتي

loadNameserver(comboserver)
هاته هي الطريقة الاحسن في جلب اسماء السيرفرات من الريجيستري اما الطريقة الاولى فهي معقدة نوعا ما و ادا اردتم معرفتها ليس لي مانع في شرحها
و في الاخير  اتمنى من الله العلي القدير ان اكون قد وفقت لشرح هدا الدرس
و لا تنسوني من صالح دعائكم و اللهم تقبل من الجميع الصيام و القيام و اجعل هدا العمل خالصا لوجهك الكريم امين امين انك ولي دالك و القادر عليه و آخر دعوانا ان الحمد لله رب العالمين و صلي اللهم و سلم على اشرف المخلوقين و على آله و صحبه اجمعين
و السلام عليكم و رحمة الله تعالى و بركاته
ملحوظة : من اعجبه الدرس فليقم بعمل دالك في الاستفتاء كنوع من التشجيع


RE: الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - boudyonline - 14-06-16

اخي الفاضل :

بارك الله فيك وغفر لوالديك

عمل ممتاز

ولكن لي سؤال : هل استخدام : XtraMessageBox.Show مقصود ؟؟؟ وهل هو صحيح ؟؟؟


RE: الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - aliday03 - 14-06-16

شكرا جزيلا لانتباهك سؤالك في محله انا استخدم في مشاريعي مكتبة ادوات devexpress
xtramessagebox.show هي من جمل devexpress
سأصحح الخطأ الان
ان شاء الله


RE: الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - رامي ابو ناصر - 21-09-16

الله يبارك فيك


RE: الدرس الاول : الدخول الى sql server من الفيجوال بيسك تعبئة الكومبوبوكس بأسماء السيرفر - aboali2 - 13-11-17

الف شكر لك ويعطيك العـــافية ..