Entwickler-Ecke
Datenbanken - Datenbankzugriff nur lesen
flyhigh83 - Mi 16.03.11 12:22
Titel: Datenbankzugriff nur lesen
Dank im Vorraus.
Nachtrag:
ich habe etwas gefunden. ...
in meiner Datei "dbDataSet.Designer.cs" habe ich folgende Funktion gefunden.
private void InitConnection() {
this._connection = new global::MySql.Data.MySqlClient.MySqlConnection();
this._connection.ConnectionString = global::Test.Properties.Settings.Default.dbConnectionString;
}[cs]
wie komme ich an diese Variable herran damit ich meinen zweiten ConnectionString verwenden kann. Ich habe es jetzt mal versucht mit einem User der nur lesen darf auf die Datenbank. Ich hoffe das ich keinen Konnflikt mit dem Programm bekomme.
flyhigh83 - Mi 16.03.11 17:52
Ups Sorry hatte meine Frage gelöscht. Daher nochmal
Ich will dem User beim Starten meines Programmes abfragen, ob er nur Daten "lesen" will oder auch "ändern".
Wie kann ich das am Besten umsetzten. Ich habe jetzt schon eine möglichkeit gefunde, welche aber bei meinem Bisher etwas zusammengestückeltem Code schwer wird umzusetzen. Da ich noch nicht alle Funktionen sauber zu einer zusammengeführt habe sondern wegen minimalen Änderungen jeweils nochmals geschrieben habe und dies in dem Event wo es ausgelöst wird.
Hier meine Lösung bisher.
C#-Quelltext
1: 2: 3: 4:
| public FormMain() { InitializeComponent(); this.tableAdapterManager.TestTableAdapter.Connection.ConnectionString = Test.Properties.Settings.Default.readdbConntectionString; |
Ich habe also den zweiten Connectionstring verwende. Dieser beinhaltet einen anderen User der nur "lese" Rechte auf die DB besitzt. Jetzt muss ich aber jedesmal beim meiner Updatefunktion und auch welche die durch den Designer erzeugt wurden abfragen, ob ich den auch schreiben darf oder nicht weil der User am Anfang des Programmes gesagt hat er will nichts ändern.
Gibt es bessere möglichkeiten?
z.B eine Globale Variable in meinem Form mit der ich dann alle Update Inserts oder Deleteanweisungen stoppe?
flyhigh83 - Di 22.03.11 18:20
Hallo,
bisher habe ich nichts besseres gefunden, alls alle Meine Obejekte, auf die der User zugreifen darf normal zu lassen. Und den Rest in einer schleife auf ReadOnly zu setzen.
Gerd Kayser - Di 22.03.11 18:35
flyhigh83 hat folgendes geschrieben : |
| bisher habe ich nichts besseres gefunden, alls alle Meine Obejekte, auf die der User zugreifen darf normal zu lassen. Und den Rest in einer schleife auf ReadOnly zu setzen. |
Wenn z. B. ein DBEdit auf einem Panel liegt, welches nicht enabled ist, kann nichts hinein geschrieben werden. Außerdem ist das Feld bzw. die Schrift nicht ausgegraut und somit besser lesbar. Zum Schreibzugriff einfach das Panel auf enabled setzen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!