كنت عايز اعرف ازاى اعمل ربط بين زر الحفظ وقاعدة البيانات
زى مثلا فى phonbook
كنت عايز كود زر حفظ المعلومات اللى هدخلها ويحفظها فى قاعدة البيانات
الاسم
رقم التليفون
حفظ ـــــــــــــــــــــــــــ عايز كود زر الحفظ
السلام عليكم ورحمة الله وبركاته
إذا كانت قاعدة البيانات سيكوال سيرفر (SQL Server Database)
كود :
Imports System.Data.SqlClient
Public Class Form1
' متغير نصي لتخزين نص الاتصال بقاعدة البيانات في السيرفر
' مثلا إذا كانت قاعدة البيانات اسمها Phones
Dim DatabaseName As String = "Phones"
Dim ConString As String = "Data Source=.\sqlexpress;Initial Catalog=" & DatabaseName & ";Integrated Security=True"
' إنشاء نسخة من كائن الاتصال
Dim con As SqlConnection = New SqlConnection(ConString)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' لتنفيذ دالة الحفظ
SaveInfo()
End Sub
' حفظ البيانات
Private Sub SaveInfo()
' sqlcommand إنشاء نسخة من ال
Dim cmd As New SqlCommand
Try
With cmd
' إسناد الاتصال للكوماند
.Connection = con
' جملة إضافة المعلومات بقاعدة البيانات
.CommandText = "Insert Into PhoneTable (PersonName, PersonPhoneNumber) Values (@1, @2)"
' تفريغ البارميتر
.Parameters.Clear()
' إضافة البيانات للبارميتر حسب ترقيمها في جملة الإضافة
.Parameters.AddWithValue("@1", txt_Name.Text.Trim)
.Parameters.AddWithValue("@2", txt_Phone.Text.Trim)
' التحقق من إغلاق الاتصال بقاعدة البيانات قبل فتحه
If con.State = ConnectionState.Open Then con.Close()
' فتح الاتصال بقاعدة البيانات
con.Open()
' تنفيذ جملة الإضافة
.ExecuteNonQuery()
MsgBox("تم الحفظ بنجاح")
End With
Catch ex As SqlException
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error")
Finally ' Finally تعني تنفيذ الأوامر اللي تحتها سواء حدث خطأ أو لم يحدث
' قتل الكوماند بعد الانتهاء من الحفظ
cmd.Dispose()
' إغلاق الاتصال بقاعدة البيانات بعد التحقق من أنه ليس مغلقا بالفعل
If con.State = ConnectionState.Open Then con.Close()
End Try
End Sub
End Class
إذا كانت قاعدة البيانات آكسس :
كود :
Imports System.Data.OleDb
Public Class Form2
' متغير نصي لتخزين نص الاتصال بقاعدة البيانات في السيرفر
' مثلا إذا كانت قاعدة البيانات اسمها Phones وموجودة بجانب الملف التنفيذي لبرنامجنا
Dim DatabaseName As String = Application.StartupPath & "\Phones.mdb"
Dim ConString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DatabaseName
' إنشاء نسخة من كائن الاتصال
Dim con As OleDbConnection = New OleDbConnection(ConString)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' لتنفيذ دالة الحفظ
SaveInfo()
End Sub
' حفظ البيانات
Private Sub SaveInfo()
' OleDbcommand إنشاء نسخة من ال
Dim cmd As New OleDbCommand
Try
With cmd
' إسناد الاتصال للكوماند
.Connection = con
' جملة إضافة المعلومات بقاعدة البيانات
.CommandText = "Insert Into PhoneTable (PersonName, PersonPhoneNumber) Values (@1, @2)"
' تفريغ البارميتر
.Parameters.Clear()
' إضافة البيانات للبارميتر حسب ترقيمها في جملة الإضافة
.Parameters.AddWithValue("@1", txt_Name.Text.Trim)
.Parameters.AddWithValue("@2", txt_Phone.Text.Trim)
' التحقق من إغلاق الاتصال بقاعدة البيانات قبل فتحه
If con.State = ConnectionState.Open Then con.Close()
' فتح الاتصال بقاعدة البيانات
con.Open()
' تنفيذ جملة الإضافة
.ExecuteNonQuery()
MsgBox("تم الحفظ بنجاح")
End With
Catch ex As OleDbException
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error")
Finally ' Finally تعني تنفيذ الأوامر اللي تحتها سواء حدث خطأ أو لم يحدث
' قتل الكوماند بعد الانتهاء من الحفظ
cmd.Dispose()
' إغلاق الاتصال بقاعدة البيانات بعد التحقق من أنه ليس مغلقا بالفعل
If con.State = ConnectionState.Open Then con.Close()
End Try
End Sub
End Class
والله أعلم
***
**
*