• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

MySQL 2 Plugin nutzen selbe DB obwohl nicht gewollt.

MrOAriO

Schafhirte
Registriert
6 Oktober 2012
Beiträge
135
Diamanten
0
Minecraft
OAriO
Hallo Minecraft-Server.eu,
ich habe ein Problem mit MySQL undzwar habe ich 2 Plugins, jedes Plugin nutzt eigentlich ne andere Datenbank, wenn das erste Plugin lädt, loggt es sich in MySQL etc. ein und dann natürlich auch in die DB, bei dem 2. auch nur dort bleibt es in der DB von den anderen Plugin.

Die MySQL Klasse :

Code:
package me.oario;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.bukkit.Bukkit;

public class MySQL {

    public static String user = "";
    public static String pass = "";
    public static String host = "";
    public static String data = "";
    public static Connection connection;

    public static void close() {
        try {
            Bukkit.getServer().broadcastMessage("§c§l[SpleggLobby] MySQL CLOSED");
            if (connection != null) {
                connection.close();
            }
        } catch (Exception ex) {
            System.err.println("[] SpleggLobby-Error-MySQL-close []");
            System.err.println(ex);
            System.err.println("[] SpleggLobby-Error-MySQL-close []");
        }
    }

    public static void connect() {
        try {
            connection = DriverManager.getConnection("jdbc:mysql://" + SpleggLobby.MySQL_host + ":3306/" + SpleggLobby.MySQL_db,
                    SpleggLobby.MySQL_user, SpleggLobby.MySQL_pass);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Bukkit.getServer().broadcastMessage("§a§l[SpleggLobby] MySQL Connected!");
        System.out.print("[SpleggLobby] MySQL Connected");
    }

    public static void Update(String qry) {
        try {
            Statement stmt = connection.createStatement();
            stmt.executeUpdate(qry);

            stmt.close();
        } catch (Exception ex) {
            connect();
            System.err.println("[] SpleggLobby-Error-MySQL-Update []");
            System.err.println(ex);
            System.err.println("[] SpleggLobby-Error-MySQL-Update []");
        }
    }

    public static ResultSet Query(String qry) {
        ResultSet rs = null;
        try {
            Statement stmt = connection.createStatement();
            rs = stmt.executeQuery(qry);
        } catch (Exception ex) {
            connect();
            System.err.println("[] SpleggLobby-Error-MySQL-Query []");
            System.err.println(ex);
            System.err.println("[] SpleggLobby-Error-MySQL-Query []");
        }
        return rs;
    }
}
 

MrOAriO

Schafhirte
Registriert
6 Oktober 2012
Beiträge
135
Diamanten
0
Minecraft
OAriO
Beschreibe dein Problem bitte verständlich.

Nicht so einfach zu erklären, also ...
Mein Problem liegt darin das Plugin Connected zu MySQL alles Okey, das 2. Plugin auch, allerdings nutzt das 2. Plugin die selbe Datenbank. Was eigentlich nicht sein sollte.
Habe schon versucht bei MySQL einen 2. User Anzulegen geht trotzdem nicht.

Lg MrOAriO
 

MrOAriO

Schafhirte
Registriert
6 Oktober 2012
Beiträge
135
Diamanten
0
Minecraft
OAriO
Das 2 Plugin auf die selbe DB zugreifen ist kein Problem, MySql ist dafür gemacht.

Soll es aber nicht. Das erste hat bsp. sg als DB, das 2. splegg. Da sonst Error auftreten.


Beenden 19600 splegg localhost:46425 splegg Sleep 2783 --- ---
Beenden 20960 sg localhost:48370 sg Sleep 1 --- ---

Dort sieht man sogar das MySQL genutzt wird auch mit den verschiedenen DBs aber im Plugin halt nicht.

Edit : Habe rausgefunden woran es lag, in beiden Plugins hieß die .class gleich also auch MySQL jetzt habe ich die eine umbenannt und nun funktioniert es ... Komisch
 
Zuletzt bearbeitet:
C

Cabraca

Guest
Lass mich raten:
Beide Plugins besitzen das Package "me.oario" in dem die Klasse "MySQL" liegt?
Dann liegt dein Problem auf der Hand.
Plugin 2 sucht nach der Klasse "me.oario.MySQL", findet aber die Klasse von Plugin 1 inkl. der MySQL Daten für Plugin 1.
Regel 1 beim Programmieren mit Java: Unterschiedliche Projekte, unterschiedliche Packages!
Mach statt me.oario einfach me.oario.plugin1 bzw me.oario.plugin2 dann sollte das Problem nicht mehr auftreten.
 

MrOAriO

Schafhirte
Registriert
6 Oktober 2012
Beiträge
135
Diamanten
0
Minecraft
OAriO
Lass mich raten:
Beide Plugins besitzen das Package "me.oario" in dem die Klasse "MySQL" liegt?
Dann liegt dein Problem auf der Hand.
Plugin 2 sucht nach der Klasse "me.oario.MySQL", findet aber die Klasse von Plugin 1 inkl. der MySQL Daten für Plugin 1.
Regel 1 beim Programmieren mit Java: Unterschiedliche Projekte, unterschiedliche Packages!
Mach statt me.oario einfach me.oario.plugin1 bzw me.oario.plugin2 dann sollte das Problem nicht mehr auftreten.

Ahh okey ich danke dir. Meine Rettung :D
 
Oben