Datenbank abfrage

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hay, habe mal versucht etwas aus der Datenbank abzufragen. Wie mache ich das am besten? habe es hiermit versucht:

    Code
    [Command("abfrage")]
        public void abfrage(Client sender)
        {
            if (getEntityData(player, "admin") >= 1337)
            API.sendChatMessageToPlayer(sender, "hi");
        }


    Funktioniert aber leider nichtmal ansatzweise^^


    Um etwas in der Datenbank zu setzten benutze ich das:

    Code
    {
            [Command("raum230")]
        public void auslesen(Client sender)
        {
            API.exported.database.executeQuery("UPDATE spieler SET admin = '6' WHERE name = '" + sender.name + "'");
            API.sendNotificationToPlayer(sender, "Du bist nun Admin rang 6");
        }
    }

    Allerdings finde ich das auch ziemlich umständlich, gibt es dafür eine andere lösung?


    Als beispiel habe ich das hier gemacht damit ihr versteht wie ich das meine funktioniert aber auch nicht :D :


    Code
    [Command("admin1")]
        public void admin1(Client player)
        {
        API.sendChatMessageToPlayer(player, "admin1");
        API.setEntityData(player.handle,"admin",1);
        }
  • getEntityData/setEntityData haben mal 0 mit einer Datebank zu tun.
    Was musst du wohl in SAMP machen? Die Daten landen da auch nicht einfach in einer Variable.
    Du musst natürlich erst das Adminlevel aus der Datenbank mittels SELECT holen und danach mittels setEntityData die Variable "auf" dem Spieler Speichern.


    Genauso bei deinem 2ten Befehl. Ja du hast den Player in der Datenbank geupdated, das hat aber keinerlei Auswirkung auf Ingame.


    Das sind immernoch 2 Verschiedene Sachen die in keiner Weise Automatisch Synchronisiert sind.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • Hm Okay, wenn man um diese Methode nich rum kommt habe das hier geschrieben:


    Code
    [Command("adminabfrage")]
    public void onlyadmin(Client sender)
    {
        string selectadmin = "SELECT * FROM admin WHERE name = '" + sender.name + "'";
        DataTable result = API.exported.database.executeQueryWithResult(selectadmin);
        if (result.Rows.Count != 0)
        {
            API.sendChatMessageToPlayer(sender, result.Rows[0]["admin"].ToString());
        }
    }


    Normalerweise sollte er bei dem Befehl das Admin level ausgeben kommen allerdings errors, was hab ich falsch gemacht?



    Code
    [14:28:21] Starting auslesen
    [14:28:21] Error/warning while compiling script!
    [14:28:21] Error (CS1518) at 23: Klasse, Delegat, Enumeration, Schnittstelle oder Struktur erwartet.
    [14:28:21] Error (CS1001) at 30: Bezeichner erwartet
    [14:28:21] Error (CS1001) at 30: Bezeichner erwartet
    [14:28:21] Error (CS1022) at 31: Typ- oder Namespacedefinition oder Dateiende erwartet.
    [14:28:22] Error (CS1514) at 11: { erwartet.
    [14:28:22] Error (CS1513) at 11: } erwartet.
    [14:28:22] ERROR STARTING RESOURCE auslesen
  • Hm Okay, wenn man um diese Methode nich rum kommt habe das hier geschrieben:


    Code
    [Command("adminabfrage")]
    public void onlyadmin(Client sender)
    {
        string selectadmin = "SELECT * FROM admin WHERE name = '" + sender.name + "'";
        DataTable result = API.exported.database.executeQueryWithResult(selectadmin);
        if (result.Rows.Count != 0)
        {
            API.sendChatMessageToPlayer(sender, result.Rows[0]["admin"].ToString());
        }
    }

    Normalerweise sollte er bei dem Befehl das Admin level ausgeben kommen allerdings errors, was hab ich falsch gemacht?



    Code
    [14:28:21] Starting auslesen
    [14:28:21] Error/warning while compiling script!
    [14:28:21] Error (CS1518) at 23: Klasse, Delegat, Enumeration, Schnittstelle oder Struktur erwartet.
    [14:28:21] Error (CS1001) at 30: Bezeichner erwartet
    [14:28:21] Error (CS1001) at 30: Bezeichner erwartet
    [14:28:21] Error (CS1022) at 31: Typ- oder Namespacedefinition oder Dateiende erwartet.
    [14:28:22] Error (CS1514) at 11: { erwartet.
    [14:28:22] Error (CS1513) at 11: } erwartet.
    [14:28:22] ERROR STARTING RESOURCE auslesen

    Du musst "SELECT admin FROM spieler ...." oder heißt deine Tabelle "admin" ?