2017-10-24 9 views
0

Ich möchte einige Daten von .mdb bekommen, aber ich bekomme eine Ausnahme auf WinXP-Maschine. Es ist MDAC 2.8 alrdy installiert. Gibt es eine Möglichkeit, mein Problem zu lösen, ohne den DB-Typ zu ändern? Methode, um Daten .:Die ausgewählte Sortierfolge wird vom Betriebssystem nicht unterstützt. WinXP

private void GetDatafromDB(){ 
     int counter = 0; 
     string _sql = "select * from template where 1=1"; 
     OleDbDataReader reader = ldb.ReadList(_sql); 
       while (reader.Read()) 
       { 

        if (reader[1] is DBNull) 
         continue; 
        this.t0 = reader[0].ToString();//autoid 
        this.t1 = reader[1].ToString();//real name 
        this.t2 = reader[2].ToString();//userid 
        this.t3 = reader[3].ToString();//fingerindex 
        this.t4 = reader[4].ToString();//rights 
        this.t5 = reader[5].ToString();//base64 template_9 


        //int autoid = (int)reader[0]; 
        byte[] tmp = Convert.FromBase64String(this.t5); 
        zkfp2.DBAdd(mDBHandle, Int32.Parse(t3), tmp); 
        counter++; 
      } 
      textTips.AppendText("Loaded "+ counter +" fingerprints \r\n"); 
    } 

Ausnahme:

************** Ausnahmetext ************* *

System.Data.OleDb.OleDbException: Ausgewählte Sortierfolge nicht unterstützt vom Betriebssystem. bei System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling (OleDbHResult hr) bei System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult (tagDBPARAMS dbParams, Object & executeResult) bei System.Data.OleDb.OleDbCommand.ExecuteCommandText (Object & executeResult) bei System.Data.OleDb.OleDbCommand.ExecuteCommand (CommandBehavior Verhalten, Object & executeResult) bei System.Data.OleDb.OleDbCommand.ExecuteReaderInternal (CommandBehavior Verhalten, String-Methode) bei System.Data.OleDb. OleDbCommand.ExecuteReader (CommandBehavior-Verhalten) bei System.Data.OleDb.OleDbCommand.ExecuteReader() bei WindowsFormsApp1.LocalDb.ReadList (String SQL) in c: \ Benutzer \ Benutzer \ Desktop \ Fingerabdruck winXP \ WindowsFormsApp1 \ LocalDb.cs: Linie 132 an WindowsFormsApp1 .Form1.GetDatafromDB() in c: \ Benutzer \ Benutzer \ Desktop \ Fingerabdruck winXP \ WindowsFormsApp1 \ Form1.cs: Linie 362 bei WindowsFormsApp1.Form1.connDevice_Click (Object sender, EventArgse) in c: \ Benutzer \ Benutzer \ Desktop \ Fingerabdruck winXP \ WindowsFormsApp1 \ Form1.cs: Linie 354 bei System.Windows.Forms.Control.OnClick (EventArgse) bei System.Windows.Forms.Button.OnClick (EventArgse) bei -System. Windows.Forms.Button.OnMouseUp (M ouseEventArgs mevent) bei System.Windows.Forms.Control.WmMouseUp (Message & m, Mousebuttons Taste, Int32 klickt) bei System.Windows.Forms.Control.WndProc (Message & m) bei System.Windows.Forms. ButtonBase.WndProc (Message & m) bei System.Windows.Forms.Button.WndProc (Message & m) bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage (Message & m) bei System.Windows.Forms. Control.ControlNativeWindow.WndProc (Nachricht & m) bei System.Windows.Forms.NativeWindow.Callback (IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

+0

Sie alle Ihre Tabellen fehlt ein eindeutiger Schlüssel-Index? –

+1

Mögliches Duplikat von [MS Access 2010: "Sortierfolge wird nicht mit dem angegebenen Dateiformat unterstützt]" (https: // stackoverflow.com/questions/3601107/ms-access-2010-Sortierreihenfolge-nicht-unterstützt-mit-der-angegebenen-Datei-Format) –

+0

@JohnWu Ich habe nur eine Tabelle mit einem eindeutigen Schlüsselindex - ID –

Antwort

Verwandte Themen