none
Datensätze beschränken RRS feed

  • Allgemeine Diskussion

  • Hallo,

    kann mir jemand erklären, wie ich es realisieren kann, das ein nutzer  nur eine bestimmte Anzahl an Datensätzen erstellen kann.

    Dieses soll für eine Probeversion sein.

    LG

    jeanny26

    Dienstag, 28. Dezember 2010 09:37

Alle Antworten

  • Hallöchen,

    wie machst du denn die Userauthentifizierung? Wenn du in jedem Datensatz, das Userkürzel (bzw. den Fremdschlüssel der Usertabelle) ablegst, könntest du mit einer Count-Abfrage entsprechend reagieren und das Erstellen neuer Datensätze dadurch verhindern.

    http://www.techonthenet.com/sql/count.php


    Wenn du eine Funktion schreiben willst, die die Abfrage für dich übergibt, würde sich das DataReader-Objekt mit der FieldCount Eigenschaft eignen.


    Cheers Jörn Bosse, Microsoft Junior Studentpartner
    Dienstag, 28. Dezember 2010 17:42
  • Hallo,

     

    danke für deine Antwort, eine Userauthentifizierung gibt es nicht, da ich das mit localdatenbankdatei erstelle also ohne Server. Mir geht es nur darum das man beim testen die Einschränkung von erstellen der Datensätze hat.

    LG

    jeanny26

    Dienstag, 28. Dezember 2010 17:48
  • Hi,

     

    ich gehe mal davon aus, dass du mehrere User hast. Damit müsstest du irgendeine Userauthentifizierung einbauen, um überprüfen zu können, welcher User bereits wie viele Datensätze angelegt hat. Also sollte in deiner Tabelle für die Datensätze auf jeden Fall eine Spalte für ein User-Feld vorhanden sein. Wenn du das Ganze zb über Windows-Authentifizierung machst, dann könntest du mit

    Environ("USERNAME")

    den Benutzernamen auslesen und als String in die Tabelle übergeben.

    Der Rest wäre, wie von mir beschrieben nur mittels Count-Abfrage möglich.


    Cheers Jörn Bosse, Microsoft Junior Studentpartner
    Dienstag, 28. Dezember 2010 17:55
  • Hallo

    ich werde es mal ausprobieren und mich nochmal melden.

     

    LG

    jeanny26

    Dienstag, 28. Dezember 2010 18:05
  • Wenn du das Ganze zb über Windows-Authentifizierung machst, dann könntest du mit Environ("USERNAME") den Benutzernamen auslesen und als String in die Tabelle übergeben.

    Hallo jeanny26,

    Den Benutzername der Person, die derzeit beim Windows-Betriebssystem angemeldet ist, kann man auch durch die Environment.UserName-Eigenschaft anzeigen (.NET Entwicklung) lassen.

    Grüße,

    Robert

    Dienstag, 28. Dezember 2010 18:33
    Moderator
  • Hallo,

    Environ("USERNAME")

    ergänzend zu Robert sei noch anzumerken, dass der Weg über die Umgebungsvariablen unsicher ist, da diese einfach zu manipulieren sind.


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Dienstag, 28. Dezember 2010 19:18
    Moderator
  • Hallo,

    kann mir jemand erklären, wie ich es realisieren kann, das ein
    nutzer nur eine bestimmte Anzahl an Datensätzen erstellen kann.

    Hierfür solltest Du erklären, was Du wirklich mit "eín nutzer" meinst.
    Ich vermute, dass Du damit einfach einen einzelnen Rechner meinst.

    Ebenso solltest Du erklären was Du mit "bestimmte Anzahl an
    Datensätzen erstellen" meinst.
    Hier vermute ich, dass Du nur eine bestimmte Anzahl von
    Datensätzen in einer Tabelle Deiner Datenbank meinst.

    Du solltest also auch noch mitteilen, mit welcher Art von Datenbank
    Du arbeitest.

    Wieviele Datensätze eine DB-Tabelle enthält kannst Du mit
    diesem SQL-Statement abfragen:

        "SELECT Count(*) AS NumRecords FROM Tabelle"

    Aber beschreibe mal mit welcher Art von Datenbank (Access.mdb,
    SQL-Server, ORACLE usw.) Du arbeitest und auch wie Deine
    DB-Tabelle, welche Du auf diese bestimmte Anzahl an Datensätzen
    begrenzen möchtest, aussieht (Feldnamen, Datentypen).

    Gruß aus St.Georgen
    Peter Götz
    www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

    Donnerstag, 30. Dezember 2010 09:06