مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 21-05-20
السلام عليكم ورحمة الله وبركاته كل عام وانتم بخير
قمت بتصميم برنامج وربطه بقاعدة بيانات من نوع اكسس
وهناك مشكلة عندما اقوم باضافة بيانات وعمل حفظ في قاعدة البيانات تظهر هذه الرسالة التي في الصورة
مع ان الاكواد المستخدمة قمت باستخدمها في برنامج اخر من قبل وهي تعمل بشكل جيد ولكن لا اعرف لماذا عند هذا البرنامج
وهذه هي الاكواد
كود :
Imports System.Data.OleDb
Imports System.Data
Imports System.Globalization
Imports System.IO
Imports System.Drawing.Image
Public Class UserControl2
Dim con As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\gastec.mdb;user id=admin;jet oledb:database password=343282")
Private Sub UserControl2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Guna.UI.Lib.GraphicsHelper.DrawLineShadow(Me, Color.Black, 50, 20, Guna.UI.WinForms.VerHorAlign.VerticalLeft)
End Sub
Private Sub usr_TextChanged(sender As Object, e As EventArgs)
End Sub
Private Sub GunaGradientButton3_Click(sender As Object, e As EventArgs) Handles GunaGradientButton3.Click
OpenFileDialog1.Filter = "Image Formats (*.PNG; *.JPG; *.BMP) | *.PNG; *.JPG; *.BMP | All Files (*.*) | *.*"
'Dim OpenFileDialog1 As New OpenFileDialog
With OpenFileDialog1
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.Cancel Then
MsgBox("image is not choised")
Return
Else
photoadd.Image = Image.FromFile(OpenFileDialog1.FileName)
End If
End With
End Sub
Private Sub GunaGradientButton1_Click(sender As Object, e As EventArgs) Handles GunaGradientButton1.Click
If (String.IsNullOrEmpty(id.Text)) Then
MessageBox.Show("يجب ادخال الاسم اولا قبل الحفظ", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
Return
End If
'==============================================================================================================
Try
Dim cmd As New OleDbCommand("insert into newcust ([NationalID],[pName],[Address],[Phone],[City],[CarNumber],[carModel],[carChassis],[MotorNumber],[Payment],[TotalPrice],[nDate]) values(@id,@gname,@address,@phone,@city,@carnum,@model,@chassis,@motornu,@pay,@cash,@gdate,@photoadd)", con)
cmd.Parameters.AddWithValue("@NationalID", id.Text)
cmd.Parameters.AddWithValue("@pName", gname.Text)
cmd.Parameters.AddWithValue("@Address", address.Text)
cmd.Parameters.AddWithValue("@Phone", phone.Text)
cmd.Parameters.AddWithValue("@City", city.Text)
cmd.Parameters.AddWithValue("@CarNumber", carnum.Text)
cmd.Parameters.AddWithValue("@carModel", model.Text)
cmd.Parameters.AddWithValue("@carChassis", chassis.Text)
cmd.Parameters.AddWithValue("@MotorNumber", motornu.Text)
cmd.Parameters.AddWithValue("@Payment", pay.Text)
cmd.Parameters.AddWithValue("@TotalPrice", cash.Text)
cmd.Parameters.AddWithValue("@nDate", gdate.Text)
Dim ms = New IO.MemoryStream()
photoadd.Image.Save(ms, photoadd.Image.RawFormat)
Dim bytes = ms.ToArray()
cmd.Parameters.AddWithValue("@Photo", bytes)
'فتح الاتصال وتاكيد الاضافه وبعد ذلك اغلاق الاتصال
con.Open()
cmd.ExecuteNonQuery()
con.Close()
'اظهار رساله للمستخدم تبين له نجاح اضافته واغلاق الاتصال واغلاق الفورم بتاع الاضافه والذهاب الى الفورم الرئيسى
MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح", 64, "حفظ الاضافة")
id.Text = ""
gname.Text = ""
address.Text = ""
phone.Text = ""
city.Text = ""
carnum.Text = ""
model.Text = ""
chassis.Text = ""
motornu.Text = ""
pay.SelectedIndex = -1
cash.Text = ""
gdate.Text = Date.Today
photoadd.Text = Nothing
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
End Class
وشكرا
RE: مشكلة في اتصال قاعدة البيانات اكسس - boudyonline - 21-05-20
أخي الفاضل :
الرسالة تقول ان الاتصال بقاعدة البيانات مفتوح
اقترح عليك استخدام هذا الامر قبل فتح الاتصال بقاعدة البيانات
كود :
If con.State() Then con.Close()
وذلك للتحقق من حالة الاتصال ةاغلاقها
RE: مشكلة في اتصال قاعدة البيانات اكسس - DR.YASER - 21-05-20
السلام عليكم
كما قال الأخ العزيز : boudyonline
الرسالة معناها أن الاتصال بقاعدة البيانات ليس مغلق و أنه مفتوح .. و بالتالى لا يستطيع البرنامج فتح الاتصال و هو مفتوح بالفعل .. لذا وجب عليك استخدام الكود الذى وضعه الأخ boudyonline بارك الله فيه .. و الذى يضمن لك اغلاق الاتصال و اعادة فتح الاتصال .. و أى سؤال لا تتردد و نحن كلنا معك
RE: مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 22-05-20
الف شكر جزاكم الله خير
RE: مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 22-05-20
(21-05-20, 10:21 PM)DR.YASER كتب : السلام عليكم
كما قال الأخ العزيز : boudyonline
الرسالة معناها أن الاتصال بقاعدة البيانات ليس مغلق و أنه مفتوح .. و بالتالى لا يستطيع البرنامج فتح الاتصال و هو مفتوح بالفعل .. لذا وجب عليك استخدام الكود الذى وضعه الأخ boudyonline بارك الله فيه .. و الذى يضمن لك اغلاق الاتصال و اعادة فتح الاتصال .. و أى سؤال لا تتردد و نحن كلنا معك
حطيت الكود وكله تمام بس بيجبلي الرسالة دي مع اني التكتست بوكس متوافق مع ترتيب قاعدة البيانات
RE: مشكلة في اتصال قاعدة البيانات اكسس - boudyonline - 22-05-20
الرسالة معناها ان نوع البيانات المدخلة لا يتوافق مع نوع الحقل
كأن يتم مثلا ادخال نص الى حقل رقمي ... او تاريخ ...
راجع نوع الحقل والبيانات المدخلة في التكست بوكس
RE: مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 22-05-20
(22-05-20, 01:41 PM)boudyonline كتب : الرسالة معناها ان نوع البيانات المدخلة لا يتوافق مع نوع الحقل
كأن يتم مثلا ادخال نص الى حقل رقمي ... او تاريخ ...
راجع نوع الحقل والبيانات المدخلة في التكست بوكس
تمام تم حل المشكلة طلع خطاء بسيطللاسف مختش بالي منه
بس سعات لما بعمل حفظ بتيجي رسالة مكتوب فيها كلمة overflow بس دي بتعت ايه او ايه معناها وشكرا
RE: مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 23-05-20
(21-05-20, 10:21 PM)DR.YASER كتب : السلام عليكم
كما قال الأخ العزيز : boudyonline
الرسالة معناها أن الاتصال بقاعدة البيانات ليس مغلق و أنه مفتوح .. و بالتالى لا يستطيع البرنامج فتح الاتصال و هو مفتوح بالفعل .. لذا وجب عليك استخدام الكود الذى وضعه الأخ boudyonline بارك الله فيه .. و الذى يضمن لك اغلاق الاتصال و اعادة فتح الاتصال .. و أى سؤال لا تتردد و نحن كلنا معك
سعات لما بعمل حفظ بتيجي رسالة مكتوب فيها كلمة overflow بس دي بتعت ايه او ايه معناها وشكرا
(21-05-20, 06:22 PM)boudyonline كتب : أخي الفاضل :
الرسالة تقول ان الاتصال بقاعدة البيانات مفتوح
اقترح عليك استخدام هذا الامر قبل فتح الاتصال بقاعدة البيانات
كود :
If con.State() Then con.Close()
وذلك للتحقق من حالة الاتصال ةاغلاقها
سعات لما بعمل حفظ بتيجي رسالة مكتوب فيها كلمة overflow بس دي بتعت ايه او ايه معناها وشكرا
RE: مشكلة في اتصال قاعدة البيانات اكسس - ابراهيم ايبو - 24-05-20
(22-05-20, 08:01 AM)mazentq كتب : (21-05-20, 10:21 PM)DR.YASER كتب : السلام عليكم
كما قال الأخ العزيز : boudyonline
الرسالة معناها أن الاتصال بقاعدة البيانات ليس مغلق و أنه مفتوح .. و بالتالى لا يستطيع البرنامج فتح الاتصال و هو مفتوح بالفعل .. لذا وجب عليك استخدام الكود الذى وضعه الأخ boudyonline بارك الله فيه .. و الذى يضمن لك اغلاق الاتصال و اعادة فتح الاتصال .. و أى سؤال لا تتردد و نحن كلنا معك
حطيت الكود وكله تمام بس بيجبلي الرسالة دي مع اني التكتست بوكس متوافق مع ترتيب قاعدة البيانات
السلام عليكم ورحمة الله وبركاته
عيد فطر مبارك اخي الكريم
تظهر هذه الرسالة عند عدم توافق الحقول المطلوبة في الادخال ويبدو ان حقل الـ ID هو من نوع ترقيم تلقائي ولا حاجة لادخال رقم الاي دي في جملة الانسرت
اما رسالة الـ overflow فهي ان احد الحقول نوع بياناته اصغر من القيمة المدخلة وبذلك لايتسع لما هو مدخل
RE: مشكلة في اتصال قاعدة البيانات اكسس - mazentq - 24-05-20
(24-05-20, 05:32 AM)ابراهيم ايبو كتب : (22-05-20, 08:01 AM)mazentq كتب : (21-05-20, 10:21 PM)DR.YASER كتب : السلام عليكم
كما قال الأخ العزيز : boudyonline
الرسالة معناها أن الاتصال بقاعدة البيانات ليس مغلق و أنه مفتوح .. و بالتالى لا يستطيع البرنامج فتح الاتصال و هو مفتوح بالفعل .. لذا وجب عليك استخدام الكود الذى وضعه الأخ boudyonline بارك الله فيه .. و الذى يضمن لك اغلاق الاتصال و اعادة فتح الاتصال .. و أى سؤال لا تتردد و نحن كلنا معك
حطيت الكود وكله تمام بس بيجبلي الرسالة دي مع اني التكتست بوكس متوافق مع ترتيب قاعدة البيانات
السلام عليكم ورحمة الله وبركاته
عيد فطر مبارك اخي الكريم
تظهر هذه الرسالة عند عدم توافق الحقول المطلوبة في الادخال ويبدو ان حقل الـ ID هو من نوع ترقيم تلقائي ولا حاجة لادخال رقم الاي دي في جملة الانسرت
اما رسالة الـ overflow فهي ان احد الحقول نوع بياناته اصغر من القيمة المدخلة وبذلك لايتسع لما هو مدخل
بارك الله فيك اخي ربنا يكرمك الف شكر
|