tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
1658
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    essar essar ist offline Mitglied Silber
    Registriert seit
    Jul 2002
    Beiträge
    58
    Hi Leute......

    Ich habe ein Programmmmmmm das auf Access beruht (wohl gemerkt Access97)
    In diesen Programm gibt es eine Tabelle die die User registriert, daß heißt einfach auf Aktiv oder Inaktiv setzt.

    Jetzt habe ich mit VB eine Anwendung geschrieben die diese Werte auf Inaktiv setzten soll.

    Problem: Ich kann oder habe keine schreib lese berechtigung auf diese Tabelle, somit kann ich aus VB die werte nicht verändern, habe aber mit ACCESS 2000 in dem ich diese besagte Tabelle verknüpft habe die gewünschte Änderung duchführen lassen.(d.H. in Access2000 o. 97 funktionierts)

    Frage: Kann ich die schreib lese berechtigung auf bestimmte geöffnete Tabellen in VB setzen oder geht das nicht....


    Habe auch schon versucht über eine zwschenanwendung mit Access2000 in dem ich die Tabelle verknüpft habe diese werte dann zu ändern, aber die schreib lese berechtigung wird weiter vererbt (gegenüber VB)


    PS.: ICh kann und darf keine Änderung an dem original vornehmen


    Hilfeeeeee******!


    danke
    essar
     

  2. #2
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    was kriegst du denn für eine fehlermeldung? ist die tabelle evtl. "durch einen anderen benutzer gesperrt"?
    und poste doch mal etwas code.
     
    "You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse

  3. #3
    essar essar ist offline Mitglied Silber
    Registriert seit
    Jul 2002
    Beiträge
    58
    Also....


    Die Fehlercode ist 3112

    "Datensätze können nicht gelesen werden, keine Leseberechtigung auf Tabelle_Daten"


    das heißt ich kann die Inhalte der Tabelle nicht von oder mit VB lesen bzw. ändern


    Der Code ist ganz einfach aufgebaut.

    Tabelle öffnen, Wert suchen -> ändern oder übergehen

    fertig nichts exotisches
     

  4. #4
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    ich kann ehrlich gesagt immer noch nicht sonderlich viel damit anfangen. zeig doch mal den code. wie baust du die verbindung auf, wie sieht die abfrage aus?
    unter welchen umständen passiert das genau? hast du die datenbank bzw. die tabelle zur laufzeit des programmes auf?
     
    "You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse

  5. #5
    essar essar ist offline Mitglied Silber
    Registriert seit
    Jul 2002
    Beiträge
    58
    Also....

    ICh arbeite so....


    Public Sub bearbeiten()

    Dim db As Database
    Dim rs As Recordset
    Dim a As String
    Dim pfad, ereignispfad, datenbank As String

    pfad = CurDir

    datenbank = "\daten.mdb"

    ereignispfad = pfad & datenbank

    Set db = OpenDatabase(ereignispfad)

    Set rs = db.OpenRecordset("Tabelle", dbOpenDynaset)

    rs.MoveFirst

    Do Until rs.EOF
    If rs![Aktiv] = -1 Then
    rs.Edit
    rs![Aktiv] = 0
    rs.Update
    End If

    rs.MoveNext
    Loop

    End
    End Sub


    und das wars schon....

    ICh habe aber jetzt rausbekommen das das mit meiner Version von Access zu tun hat, da die Orginaldatenbank aus Access97 geschrieben wurde und ich diese nur öffnen kann wenn ich "Exclusiv schreibgeschütz" benutze , ich müßte diese sonst in Access2000 konvertieren dann wäre aber meine Strucktur gegenüber dem Ursprungsprogramm geändert und dies würde dann nicht mehr funktionieren..

    Fazit: ich müßte einen Weg finden in dem ich Access97 Datenbanken auf einem Access2000 Rechner öffnen kann ohne diese zu konvertieren geschweige dem zu verändern obwohl ich in der Objektbibo. MS ADO 3.6 benutze(ich glaube und bin überzeugt das diese auch Access97 verwendet und benutzt)

    Zu meinen Fehler möchte ich nur eins noch hinzufügen....

    Wenn ich die Access97 Datenbank in Access2000 nur öffne dann habe ich keine möglichkeit a.) Datenstrukture zu verändern b.) diese ist dann auch schreibgeschützt ("obwohl ich einzelne Daten in Tabellen verändern kann") c.) wenn ich über iene ZwischenAccessanwendung die besagte Tabelle verknüpfe kann ich zwar auf die Daten zugreifen (alles über Access2000 selbst aber nicht über VB......)


    PS.: dieeigendliche Anwendung ist für die Zeit der Veränderung geschlossen..


    Bis dann essar
     

  6. #6
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    ach das meinst du. datenbanken aus access 97 kannst du nicht ohne weiteres mit access 2000 bearbeiten, das ist schon richtig. das hängt wohl nicht zuletzt mit der marktpolitik von microsoft zusammen.

    dass access dao verwendet, ist schon ganz richtig. aber im programmcode sollte man auf dao verzichten, weil microsoft in zukunft wohl mehr auf ado aufbauen wird. ausserdem lässt sich mit ado leichter arbeiten.
    zu deinem code kann ich nur sagen, dass du nicht mit curdir arbeiten solltest. wenn ich mich richtig erinnere, dann liefert curdir nur das aktuelle verzeichnis zurück, ist also im programmablauf nicht immer gleich. mach das lieber mit einer statisches angabe (z.b. "c:\daten\") oder als unterverzeichnis von app.path.
     
    "You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse

  7. #7
    essar essar ist offline Mitglied Silber
    Registriert seit
    Jul 2002
    Beiträge
    58
    ich habe mir deshalb den Pfad zurückgeben lassen da ich die daten.mdb immer im geleichen Verzeichnis aufbewahre wie meine VB-Anwendung und auch noch ein Grund dafür ist das ich wenn ich diese mal auf einem anderen rechner als meinen Server laufen lassen ich mein Pfad nicht großartig in meinem Programmm ändern muß....


    kann ich auch ohen z.B. auf dem Server Access XYZ zu haben meine VB anwendung ohne Konflikte ausführen oder muß ich immmer die Basis von Access auf dem Rechner besitzen auf dem sich meine .mdb befindet weil ich habe immer ncoh keine lösung da ich alle im Netztwerk befindlichen Rechner mit Office2000 ausstatten willlll.....****?
     

Ähnliche Themen

  1. Access-DB-Zugriff mit VB.net
    Von Questionmark im Forum .NET Café
    Antworten: 1
    Letzter Beitrag: 30.05.10, 18:50
  2. Access Zugriff
    Von jean luc im Forum Office-Anwendungen
    Antworten: 8
    Letzter Beitrag: 18.03.09, 08:00
  3. Zugriff auf Access DB
    Von Tekkion im Forum Visual Basic 6.0
    Antworten: 12
    Letzter Beitrag: 20.06.08, 09:34
  4. Access Zugriff via VC++ OHNE Access Installation
    Von Beginnerin im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 09.12.05, 07:47
  5. Zugriff auf MS-Access-DB?
    Von Smoerble im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 23.09.03, 18:58