Überprüfen Sie, ob eine Spalte in der OleDb-Tabelle vorhanden ist

Ich versuche zu überprüfen, ob eine Spalte vorhanden ist, und wenn nicht, füge sie hinzu. Ich habe ein paar Lösungen ausprobiert, darunterdiese, aber die Syntax ist für Access db nicht korrekt.

Das habe ich bisher:

    public void Update(string task, string dbPath, string tableName = "Frames")
    {
        OleDbConnection db = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;data source=" + dbPath);
        db.Open();

        OleDbCommand command = db.CreateCommand();
        command.CommandText = "COL_LENGTH('Frames','SetNumber')";
        Debug.WriteLine(command.ExecuteReader());




        /*
        string[] restrictions = new string[] {null, null, tableName};

        DataTable dtColumns = db.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, restrictions);

        foreach (DataColumn column in dtColumns.Columns)
        {
            Debug.WriteLine(column.ColumnName);
        }*/

    }

Ich habe auch versucht, GetOleDbSchemaTable zu verwenden, aber es gibt nicht die richtige Tabelle zurück oder so. Was vermisse ich?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage