تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] ظهور رساله في نافذة immediate windows
#1
السلام عليكم

مشكلتي هي ظهور رساله في نافذة immediate windows عندما اقوم بتنفيذ المشروع وهي كالتالي:
A first chance exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll

والكود هو كالتالي:
[
php]Imports System.Data
Imports System.Data.OleDb
Public Class frmAddNew

Private Sub btnSave_Click(sender As System.Object, e As System.EventArgs) Handles btnSave.Click
Try
Dim SavInto As New OleDb.OleDbCommand
'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\bin\Debug\AppointmentSystem.accdb'
Dim ConStr As String = _
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & _
Application.StartupPath & "\AppointmentSystem.Accdb"
Dim Conn As New OleDbConnection(ConStr)
SavInto.Connection = Conn
SavInto.CommandType = CommandType.Text
SavInto.CommandText = "INSERT INTO tblCustomers(CivilRegNum,Name1,Name2,Name3,Name4)" & _
"values (txtCRN.Text ,txtName1.Text ,txtName2.Text ,txtName3 ,txtName4 ) "
Conn.Open()
SavInto.ExecuteNonQuery()
Conn.Close()
MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح")
Me.Close()

Catch ex As Exception
Exit Sub
End Try
End Sub
End Class
[/php]

مع الشكر لكم جميعاً
الرد
تم الشكر بواسطة:
#2
المشروع بواسطة فيجوال بيسك 2010 اكسبرس وقاعدة البيانات بواسطة اكسس 2007
الرد
تم الشكر بواسطة:
#3
ما هي بيئة نظام التشغيل لديك 32 أم 64 ؟

RolleyesRolleyesRolleyes
{‏‏ يَرْفَعِ اللَّهُ الَّذِينَ آمَنُوا مِنكُمْ وَالَّذِينَ أُوتُوا الْعِلْمَ دَرَجَاتٍ‏ }

 " Mohamed M. Bedair     -     " Abu Anas
Genius Live , Egypt
الرد
تم الشكر بواسطة:
#4
Windows 7 32 bit
الرد
تم الشكر بواسطة:
#5
(05-03-14, 01:23 AM)bumb كتب : Windows 7 32 bit

اذا الخطأ أنك تستخدم Provider غير مناسب
قم بإستبدال Provider=Microsoft.ACE.OLEDB.12.0 إلي Provider=Microsoft.Jet.Oledb.4.0

RolleyesRolleyesRolleyes
{‏‏ يَرْفَعِ اللَّهُ الَّذِينَ آمَنُوا مِنكُمْ وَالَّذِينَ أُوتُوا الْعِلْمَ دَرَجَاتٍ‏ }

 " Mohamed M. Bedair     -     " Abu Anas
Genius Live , Egypt
الرد
تم الشكر بواسطة:
#6
نفس الرساله تظهر مره ثانيه
الرد
تم الشكر بواسطة:
#7
السلام عليكم...

لا علاقة لنسخة Windows بالأمر لأن الـ Provider يتحدد بنسخة Access و ليس Windows، و طالما أنك تستعمل Access 2007 فإن الـ Provider صحيح.

و لكن الخطأ في عبارة VALUES:

كود :
"values (txtCRN.Text ,txtName1.Text ,txtName2.Text ,txtName3 ,txtName4 ) "

حيث قمت بوضع أسماء مربعات النص ضمن علامات الاقتباس، و بالتالي ستذهب كما هي إلى Access الذي سيحاول تفسيرها على أنها أسماء حقول أو دوال و ينتج خطأ.

عدل عبارة VALUES إلى هذا الشكل:

كود :
"values (" & txtCRN.Text & ", '" & txtName1.Text & "', '" & txtName2.Text & "', '" & txtName3.Text & "', '" & txtName4.Text & "')"

* لاحظ وجود علامات الاقتباس الفردية قبل و بعد كل من txtName1 و txtName2 و txtName3 و txtName4 لأنها تقابل حقولاً نصية.
و إذا كان الحقل CivilRegNum نصياً أيضاً فضع علامات اقتباس فردية أيضاً قبل و بعد txtCRN.Text.

نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد
تم الشكر بواسطة:
#8
نفس المشكله

اليكم المشروع بالمرفقات


الملفات المرفقة
.zip   AppointmenSystem.zip (الحجم : 98.63 ك ب / التحميلات : 88)
الرد
تم الشكر بواسطة:
#9
اخي الكريم انت وضع امر الخروج من الروتين عند حدوث خطا وهكذا لن تعرف الخطا اصلا
رسالة الخطا بعد حذف امر الخروج
كود :
ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.
الرد
تم الشكر بواسطة:
#10
الكود بعد التصحيح

كود :
Try
            Dim SavInto As New OleDb.OleDbCommand
            'Microsoft.ACE.OLEDB.12.0
            'Microsoft.Jet.Oledb.4.0
            Dim ConStr As String = _
                "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & _
                Application.StartupPath & "\AppointmentSystem.Accdb"
            Dim Conn As New OleDbConnection(ConStr)
            SavInto.Connection = Conn
            SavInto.CommandType = CommandType.Text
            SavInto.CommandText = "INSERT INTO tblCustomers(CivilRegNum,Name1,Name2,Name3,Name4)" & _
            "values (" & txtCRN.Text & ", '" & txtName1.Text & "', '" & txtName2.Text & "', '" & txtName3.Text & "', '" & txtName4.Text & "')"

            If Conn.State = ConnectionState.Closed Then
                Conn.Open()
            End If
            SavInto.ExecuteNonQuery()
            Conn.Close()
            MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح")
            Me.Close()

        Catch ex As Exception
            MsgBox(Err.Description, MsgBoxStyle.Critical, "")



        End Try

الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  Windows Mobile 6 ynasser15 1 59 26-11-18, 03:09 PM
آخر رد: mero5000
  محتاج مساعدة فى عمل نافذة دخول البرنامج Mohamed Magdy 0 62 18-11-18, 11:33 PM
آخر رد: Mohamed Magdy
  [VB.NET] مشكلة عدم ظهور كريستال ريبورت في فجول 2013 عبدالرحمن بشري عمر 9 121 17-11-18, 03:31 AM
آخر رد: عبد العزيز البسكري
  [سؤال] كيف احفظ صورة من picturebox1 الى مجلد ضمن مسار البرنامج بدون ظهور مربع حوار mh66 5 147 16-11-18, 07:53 PM
آخر رد: mh66
  محتاج مساعدة فى نافذة الدخول Mohamed Magdy 2 84 15-11-18, 11:22 AM
آخر رد: Mohamed Magdy
  ظهور قيمة الحقل بالتاكست بكس العيدروس 4 123 07-11-18, 12:29 PM
آخر رد: العيدروس
  رساله غير مفهومه عند فتح الفورم vb2010 2 93 04-11-18, 05:18 PM
آخر رد: vb2010
Information ظهور هذه الرساله عند تشغيل برنامجي...؟ Ahmed-IT 2 150 17-10-18, 03:25 AM
آخر رد: عبد العزيز البسكري
Exclamation مشكلة فى نافذة WebBrowser naderalkeng54 1 127 23-09-18, 12:08 PM
آخر رد: elgokr
  كيف يُمكن عرض خيارات داخل combobox بناء على ظهور شهر مُعين وسنة مُعين بأداةDatetimepi Hazem1 5 220 15-09-18, 02:36 AM
آخر رد: Hazem1

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


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