09-05-19, 03:28 AM
09-05-19, 01:51 PM
تفضل هذا مثال مشروح عما تريده .
و هذا الكود المشروح :
و هذا الكود المشروح :
PHP كود :
'عمل مديول ووضع فانكشن به'
Module ExecuteQuery
'عمل فانكشن يعود بـ داتاتيبل معبئة بالسجلات'
''' <summary>'
''' تحمييل السجلات في داتا تيبل'
''' </summary>'
''' <param name="TableName">اسم الجدول</param>'
''' <param name="ColumnName">اسم العامود</param>'
''' <param name="ParamName">قيمة الباراميتر</param>'
''' <param name="SearchLike">Like هل تريد البحث بتعليمة</param>'
''' <returns>داتا تيبل</returns>'
''' <remarks>لا يوجد</remarks>'
Public Function EXCQuery(TableName As String, ColumnName As String, ParamName As String, SearchLike As Boolean) As DataTable
'تعريف متغيير للاستعلام'
Dim StrSQL As String = String.Empty
'تعريف شرط إذا كان الاستعلام Like'
If SearchLike = True Then
'تعريف شرط إذا كان الباراميتر فارغ'
If ParamName = String.Empty Then
'كتابة الاستعلام'
StrSQL = "Select * From " & TableName
'تعريف شرط إذا كان الباراميتر غير فارغ'
ElseIf Not ParamName = String.Empty Then
'كتابة الاستعلام'
StrSQL = "Select * From " & TableName & " Where " & ColumnName & " Like @ParamName"
End If
ElseIf SearchLike = False Then
'تعريف شرط إذا كان الباراميتر فارغ'
If ParamName = String.Empty Then
'كتابة الاستعلام'
StrSQL = "Select * From " & TableName
'تعريف شرط إذا كان الباراميتر غير فارغ'
ElseIf Not ParamName = String.Empty Then
'كتابة الاستعلام'
StrSQL = "Select * From " & TableName & " Where " & ColumnName & " =@ParamName"
End If
End If
'كود الاتصال غيير بما يتناسب مع اسم قاعدة بياناتك و اسم مستخدمك و كلمة مرورك'
Dim Con As New SqlClient.SqlConnection("Server =(local);database=TestAsemXT;integrated security=false;User ID=AsemShahen;Password=12345679")
'تعريف داتا أدبتر'
Dim da As New SqlClient.SqlDataAdapter
'فتح الاتصال مع قاعدة البيانات'
If Con.State = ConnectionState.Closed Then Con.Open()
'تعريف سيكول كوماندو وضع الاستعلام و كود الاتصال به'
Dim cmd As New SqlClient.SqlCommand(StrSQL, Con)
'تعريف شرط إذا كان الاستعلام Like'
If SearchLike = True Then
'تعريف باراميتر'
cmd.Parameters.AddWithValue("@ParamName", "%" & ParamName & "%")
ElseIf SearchLike = False Then
'تعريف باراميتر'
cmd.Parameters.AddWithValue("@ParamName", ParamName)
End If
'تعريف داتاتيبل'
Dim dt As New DataTable
'تفريغ الداتاتيبل'
dt.Clear()
'وضع الكوماند بـ الداتا أدبتر'
da.SelectCommand = cmd
'تحميل السجلات في الداتاتيبل'
da.Fill(dt)
'إغلاق الاتصال'
If Con.State = ConnectionState.Open Then Con.Close()
'العودة بـ الداتاتيبل المعبئة'
Return dt
'إغلاق الفانكشن'
End Function
'إغلاق الموديول'
End Module
'كيفية إستخدام الكود في الفورم'
Public Class Form1
'كود تحميل الفورم'
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'تعريف داتاتيبل'
Dim dt As New DataTable
'تفريغ الداتاتيبل'
dt.Clear()
'تعبئة الداتاتيبل الجديدة من الفانكشن'
dt = EXCQuery("TestTable", "FullName", "", False)
'تعبئة داتا غريد فيو من الداتاتيبل'
DataGridView1.DataSource = dt
End Sub
'بحث حسب القيمة المعطاة للبراميتر'
Private Sub FillTableWithParamSearch_Click(sender As Object, e As EventArgs) Handles FillTableWithParamSearch.Click
'تعريف داتاتيبل'
Dim dt As New DataTable
'تفريغ الداتاتيبل'
dt.Clear()
'تعبئة الداتاتيبل الجديدة من الفانكشن'
dt = EXCQuery("TestTable", "FullName", Txt_Param.Text, False)
'تعبئة داتا غريد فيو من الداتاتيبل'
DataGridView1.DataSource = dt
End Sub
'تحميل كامل الجدول'
Private Sub BtnFillAllTable_Click(sender As Object, e As EventArgs) Handles BtnFillAllTable.Click
'تعريف داتاتيبل'
Dim dt As New DataTable
'تفريغ الداتاتيبل'
dt.Clear()
'تعبئة الداتاتيبل الجديدة من الفانكشن'
dt = EXCQuery("TestTable", "FullName", "", False)
'تعبئة داتا غريد فيو من الداتاتيبل'
DataGridView1.DataSource = dt
End Sub
'تعليمة Like بحث حسب القيمة المعطاة للبراميتر'
Private Sub FillTableWithParamSearchLike_Click(sender As Object, e As EventArgs) Handles FillTableWithParamSearchLike.Click
'تعريف داتاتيبل'
Dim dt As New DataTable
'تفريغ الداتاتيبل'
dt.Clear()
'تعبئة الداتاتيبل الجديدة من الفانكشن'
dt = EXCQuery("TestTable", "FullName", Txt_Param.Text, True)
'تعبئة داتا غريد فيو من الداتاتيبل'
DataGridView1.DataSource = dt
End Sub
End Class