إستفتاء : ما رأيك في المثال ؟
هذا الإستفتاء مغلق .
ممتاز
40.00%
2 40.00%
جيد
60.00%
3 60.00%
مستحسن
0%
0 0%
لاباس به
0%
0 0%
صعيف
0%
0 0%
إجمالي 5 أصوات 100%
* لقد قمت بالتصويت لهذا الإختيار . [عرض النتائج]

تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] اضافة و تعديل و حدف و تنقل بين سجلات و بحث عادي و متقدم و عمليات اخرى sql
#1
Information 
السلام عليكم ايها الاخوة الكرام حيا كم الله و كل عام و انتم بخير و رمصان كريم 
اليوم إن شاء الله مثال عملي عن الاضافة و التعديل و الحدف و التنقل بين السجلات و البحث العادي و المتقدم و البحث بين تاريخين 
و sum و avg و count و MaxId كل هدا بالاجراءات المخزنة stored procedure و كدالك سنعتمد على البرمجة الكائنية التوجه بالاعتماد على الكلاسات و منه DATA ACCESS LAYER
اللغة البرمجية :الفيجوال بيسك 2008 وقاعدة البيانات : sql Server 2008 مع السورس الكود كاملا 
انها اول مشاركة لي بمثال عملي اتمنى ان يعجب الجميع و ان يستفيد الجميع
في قاعدة البيانات سيكون جدول فيه البيانات الاتية
Id,FullName,Phone,naissance,Adresse,Email,Salary,Picture
و أضفت الصورة لانني اعلم عدد كبير من الناس تواخههم مشكلة في الصورة
وكدلك عند ادخال البيانات يمكن لك اضافة الصورة او بدون 
اترككم مع المثال
المرجو الدخول على الرابط في جهازكم و لصق قاعدة البيانات
 C:\Program Files\Microsoft SQL Server\MSSQL10.TAHA\MSSQL\DATA
TAHA ستجد اسم instance آخر غير هدا عندك 
في كلاس dataaccesslayer غير اسم السيرفر من الاسم الدي ستجده الى اسم السيرفر الموجود فس جهازك
تقبل الله صيامكم


الملفات المرفقة
.rar   Projects.rar (الحجم : 581.82 ك ب / التحميلات : 242)
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985 , محمد كريّم , Sajad , Sajad
#2
أحسنت أخي بارك الله فيك

أخي العزيز، فضلا لا أمرأ أن تضع صورة عن Data Access Layer و Buisness Data Layer ليستفيد الإخوة
خليهن يطوروا شوي
عن مولا نا علي ابن أبي طالب عليه السلام :
أحصد الشر من صدر غيرك بقلعه من صدرك.
الرد }}}}
تم الشكر بواسطة:
#3
السلام عليكم

بارك الله فيك

أضم صوتي لصوت الأخ khodor1985

تحياتي لك
الرد }}}}
تم الشكر بواسطة: khodor1985
#4
Information 
السلام عليكم ايها الاخوة الكرام
الشكر لله اخي
هدا واجب
لك ما تريد اخي

الكلاس الخاصة ب DATA ACCESS LAYER على الفيجوال بيسك
أما BUSNISS LAYER فهو راجع لعملك اخي اي انت من تحدد طبيعته



كود :
import system.data.sqlclient
import system.data

Public Shared Cn As SqlConnection
Sub New
    Cn = New SqlConnection("Server=ABOUTAHA\TAHA;Database=contacts ;integrated security=true")
End sub
Public Sub Open
    If Cn.State <> ConnectionState.Open Then
        Cn.Open
    End If
End sub
Public Sub Close
    If Cn.State = ConnectionState.Open Then
        Cn.Close
    End If
End sub
Public Function SelectData(Stored_Procedure As String, param() As SqlParameter) As DataTable
    Dim cmd As New SqlCommand With {.CommandType = CommandType.StoredProcedure, .CommandText = Stored_Procedure, .Connection = Cn}
    If param IsNot Nothing Then
        For i As Integer = 0 To param.Length - 1
            cmd.Parameters.Add(param(i))
        Next
    End If
    Dim da As New SqlDataAdapter(cmd)
    Dim dt As New DataTable
    da.Fill(dt)
    Cn.Close
    Return dt
End Function
Public Sub ExcuteCommand(Stored_Procedure As String, param() As SqlParameter)
    Dim cmd As New SqlCommand With {.CommandType = CommandType.StoredProcedure, .CommandText = Stored_Procedure, .Connection = Cn}
    Cn.Open
    If param IsNot Nothing Then
        cmd.Parameters.AddRange(param)
    End If
     cmd.ExecuteNonQuery
    Cn.Close
End Sub
Public Function ExcuteCommandScalar(Stored_Procedure As String, param() As SqlParameter) as string
    Dim cmd As New SqlCommand With {.CommandType = CommandType.StoredProcedure, .CommandText = Stored_Procedure, .Connection = Cn}
     Cn.Open
    If param IsNot Nothing Then
        cmd.Parameters.AddRange(param)
    End If
    dim a as string
    a = cmd.ExecuteScalar
    Cn.Close
    Return a
End Function



الرد }}}}
تم الشكر بواسطة: khodor1985 , Sajad , Sajad
#5
مجهود رائع .... بارك الله فيك
الرد }}}}
تم الشكر بواسطة: khodor1985
#6
وهذه طريقة أخرى :
كود :
Public Class DataAccessLayer
    Dim con As New SqlConnection("Data Source=localhost;Initial Catalog=Test;Integrated Security=True")
    Dim cmd As SqlCommand
    Dim da As SqlDataAdapter
    Dim dt As DataTable

    Public Sub open()
        If con.State <> ConnectionState.Open Then con.Open()
    End Sub

    Public Sub close()
        If con.State = ConnectionState.Closed Then con.Open()
    End Sub

    Public Function SelectData(ProcName As String, param As SqlParameter()) As DataTable
        cmd = New SqlCommand
        cmd.CommandType = CommandType.StoredProcedure
        cmd.CommandText = ProcName
        cmd.Connection = con

        If Not param Is Nothing Then
            cmd.Parameters.AddRange(param)
        End If

        da = New SqlDataAdapter(cmd)
        dt = New DataTable
        da.Fill(dt)
        Return dt
    End Function

    Public Sub ExecuteCMD(ProcName As String, param As SqlParameter())
        cmd = New SqlCommand
        cmd.CommandType = CommandType.StoredProcedure
        cmd.CommandText = ProcName
        cmd.Connection = con

        If Not param Is Nothing Then
            cmd.Parameters.AddRange(param)
        End If
        cmd.ExecuteNonQuery()
    End Sub
End Class
عن مولا نا علي ابن أبي طالب عليه السلام :
أحصد الشر من صدر غيرك بقلعه من صدرك.
الرد }}}}
تم الشكر بواسطة: Sajad
#7
شكرا جزيلا لك اخي
الرد }}}}
تم الشكر بواسطة:
#8
بارك الله فيكى معلمى
الرد }}}}
تم الشكر بواسطة:
#9
Thumbs Up 
احسنت بارك الله فيك
الرد }}}}
تم الشكر بواسطة:


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم