منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
ما الخطأ في حفظ جدول إلى ملف نصي - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : ما الخطأ في حفظ جدول إلى ملف نصي (/showthread.php?tid=20296)

الصفحات: 1 2


ما الخطأ في حفظ جدول إلى ملف نصي - ahmedfa71 - 08-05-17

السلام عليكم ورحمة الله وبركاته
لدي هذا الكود لحفظ جدول من قاعدة بيانات ACCESS إلى ملف نصي TXT
إلا أنه تضهر رسالة تقول بأن "الجدول موجود مسبقا" رغم أنه غير موجود
وبعدها يتم إنشاء الجدول وليس فيه اي بيانات فارغ
فما هو الخطأ أو الناقص في هذا الكود
PHP كود :
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        Try
            Dim EnregFechiers 
As New SaveFileDialog
            EnregFechiers
.Filter "Ahmed Files|*.txt"
 
           EnregFechiers.Title "Enregistrer sous"
 
           EnregFechiers.FilterIndex 1
            If EnregFechiers
.ShowDialog Windows.Forms.DialogResult.OK Then
                Using sf 
As New System.IO.FileStream(EnregFechiers.FileNameIO.FileMode.Create)

 
               End Using
                Dim NFichier 
As String System.IO.Path.GetFileName(EnregFechiers.FileName)
 
               Dim AccesFichier As String System.IO.Path.GetDirectoryName(EnregFechiers.FileName)
 
               Dim con As New OleDb.OleDbConnection
                con
.ConnectionString "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\BDclass.accdb"
 
               con.Open()
 
               Dim cmd As OleDb.OleDbCommand
                cmd 
= New OleDb.OleDbCommand("SELECT * INTO [Txt;Database=" AccesFichier ";HDR=No].[" NFichier "] FROM [class]"con)
 
               cmd.ExecuteNonQuery()
 
               con.Close()
 
           End If
 
       Catch ex As Exception
            MessageBox
.Show(ex.Message)
 
       End Try
 
   End Sub 
تقبلو كل الإحترام والتقدير


RE: ما الخطأ في حفظ جدول إلى ملف نصي - mansoor - 08-05-17

PHP كود :
Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.Click
        
Try

            
Using EnregFechiers As New SaveFileDialog With {.Filter "Ahmed Files|*.txt", .Title "Enregistrer sous", .FilterIndex 1}

                If 
EnregFechiers.ShowDialog Windows.Forms.DialogResult.OK Then

                    Dim NFichier 
As String System.IO.Path.GetFileName(EnregFechiers.FileName)
                    
Dim AccesFichier As String System.IO.Path.GetDirectoryName(EnregFechiers.FileName)

                    
Dim con As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\BDclass.accdb;")

                    
con.Open()
                    
Dim cmd As New OleDb.OleDbCommand("SELECT * INTO [Text;Database=" AccesFichier ";HDR=No].[" NFichier "] FROM [class]"con)
                    
cmd.ExecuteNonQuery()
                    
con.Close()

                
End If

                
MsgBox("نجاح")
            
End Using

        
Catch ex As Exception
            MessageBox
.Show(ex.Message)
        
End Try
    
End Sub 



RE: ما الخطأ في حفظ جدول إلى ملف نصي - ahmedfa71 - 09-05-17

شكرا لك أخي mansoor على الرد
لكن الكود غير شغال وتضهر الرسالة التالية
"يتطابق حقل مواصفات الملف النصي مع الفاصل العشري أو المحدد النصي"
وبارك الله فيك أخي


RE: ما الخطأ في حفظ جدول إلى ملف نصي - mansoor - 09-05-17

ممكن تضع المشروع، لأني مجرب الكود عندي بدون مشكلة.


RE: ما الخطأ في حفظ جدول إلى ملف نصي - ahmedfa71 - 10-05-17

(09-05-17, 08:57 PM)mansoor كتب : ممكن تضع المشروع، لأني مجرب الكود عندي بدون مشكلة.

شكرا أخي منصور  بارك الله فيك 
ستجد المشروع في المرفقات


RE: ما الخطأ في حفظ جدول إلى ملف نصي - mansoor - 10-05-17

PHP كود :
Imports System.Data.OleDb

Public Class Form1

    
Private con As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Dbcalcul.accdb;")


    Private 
Sub Form1_Load(ByVal sender As ObjectByVal e As System.EventArgsHandles Me.Load

        ActualiseDG
()

    
End Sub


    
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        
Try

            
Using EnregFechiers As New SaveFileDialog With {.Filter "Ahmed Files|*.txt", .Title "Enregistrer sous"}

                If 
EnregFechiers.ShowDialog Windows.Forms.DialogResult.OK Then

                    
'يحذف الملف القديم (إن وجد) ليتمكن من الحفظ
                    If IO.File.Exists(EnregFechiers.FileName) Then IO.File.Delete(EnregFechiers.FileName)

                    Dim NFichier As String = System.IO.Path.GetFileName(EnregFechiers.FileName)
                    Dim AccesFichier As String = System.IO.Path.GetDirectoryName(EnregFechiers.FileName)


                    Dim cmd As New OleDb.OleDbCommand("SELECT * INTO [Text;Database=" & AccesFichier & ";HDR=No].[" & NFichier & "] FROM [Article]", con)

                    If con.State <> ConnectionState.Open Then con.Open()
                    cmd.ExecuteNonQuery()
                    con.Close()

                    MsgBox("نجاح")

                End If

            End Using

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub


    Private Sub ActualiseDG()
        Try
            Using Ad As New OleDbDataAdapter("SELECT * from Article", con)

                Dim dt As New DataTable

                Ad.Fill(dt)

                DataGridView.DataSource = dt

                ImportDG()

            End Using
        Catch ex As Exception
            MessageBox.Show(ex.Message, "خطأ3", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try
    End Sub


    Public Sub ImportDG()
        With DataGridView
            .Columns(0).Width = 70
            .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
            .Columns(1).Width = 66
            .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
            .Columns(2).Width = 69
            .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
            .Columns(3).Width = 88
            .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
        End With
    End Sub

End Class 



RE: ما الخطأ في حفظ جدول إلى ملف نصي - ahmedfa71 - 10-05-17

الكود غير شغال مع ظهور نفس الرسالة السابقة
"يتطابق حقل مواصفات الملف النصي مع الفاصل العشري أو المحدد النصي"


RE: ما الخطأ في حفظ جدول إلى ملف نصي - mansoor - 10-05-17

المرفق شغال عندي بدون مشكلة


RE: ما الخطأ في حفظ جدول إلى ملف نصي - ahmedfa71 - 10-05-17

عندي لا يشتغل رغم عدة محاولات وإعادة تحميلي للملف المعدل من طرفك الأخ منصور


RE: ما الخطأ في حفظ جدول إلى ملف نصي - mansoor - 10-05-17

اعتقد تحتاج تحديث النظام وبالذات محرك الاكسس او بتبسيط للمسألة تحديث الأكسس
جرب المشروع في جهاز آخر.