Ich versuche, eine Verbindung zu einer MS Access-Datenbank (.mdb) über OleDb
herzustellen. Meine Frage istKeine Leseberechtigung für MSysObject-Fehler
SELECT * FROM ListQueries
die mir den Fehler Fehler
SQL Execution abruft.
Ausgeführte SQL-Anweisung: SELECT * FROM ListQueries Fehlerquelle: Microsoft JET-Datenbankmodul Fehlermeldung: Datensätze können nicht gelesen werden; Keine Leseberechtigung für 'MSysObjects'.
Dann habe ich versucht this answer, aber es hat nicht geholfen. Dann sah ich eine andere Antwort, um das zu tun.
strDdl = "GRANT SELECT ON MSysObjects TO Admin;"
CurrentProject.Connection.Execute strDdl
Ich weiß nicht, wie das in meinem web project
zu implementieren. Alternativ wurde so etwas wie dies gemäß diesem Vorschlag von @HansUp
schreiben, soll es von C# arbeiten, wenn Sie es von einer OleDb Verbindung zum Access db
der Code ausgeführt wird,
OleDbConnection con;
using (con = new OleDbConnection(Connection.connectionString()))
{
con.Open();
using (var com = new OleDbCommand("GRANT SELECT ON MSysObjects TO Admin", con))
{
com.ExecuteNonQuery();
}
using (var com = new OleDbCommand("Select * from ListQueries", con))
{
using (var dr = com.ExecuteReader())
{
while (dr.Read())
{
qryList.Add(SQLReaderExtensions.SafeGetString(dr, "Name"));
}
dr.Close();
}
}
con.Close();
}
Die erste com.ExecuteNonQuery()
gibt mir diesen Fehler.
Die Microsoft Jet-Engine-Arbeitsgruppe-Informationsdatei kann nicht geöffnet werden.
Ich würde wirklich gerne wissen, wie die Erlaubnis für einen OleDb Aufruf zu gewähren zu arbeiten. Alle Vorschläge werden wunderbare
P. S sein: Übrigens, ich bin mit MS Access 2010
Ich empfehle, dass Sie MS Access-System-Objekte nicht. Es gibt andere und bessere Möglichkeiten, die Informationen zu erhalten. Was genau versuchst du zu tun? – Fionnuala
@Remou: Abfragen in MS-Access sind analog zu Ansichten in SQL zum größten Teil, IMHO. – naveen
Sie haben die Wahl zwischen ADO (http://msdn.microsoft.com/en-us/library/kcax58fh(VS.80).aspx) und DAO. Was würdest du bevorzugen? Beachten Sie, dass in ADO ein Unterschied zwischen Aktions- und Auswahlabfragen besteht. – Fionnuala