Stránka 1 z 1

Chyba

Napsal: 06 bře 2016, 01:10
od WorkiS

Kód: Vybrat vše

82.208.17.38:27366


Zdravím,

potřeboval bych jak opravit tento řádek v Javě (1.9 Spigot)

Kód: Vybrat vše

Main.mysql.update("INSERT INTO MGCoins(nick, uuid, coins) VALUES ('" + uuid + p.getName() + "', '0');");


Varování:
java.sql.SQLException: Column count doesn't match value count at row 1

Děkuji :)

Re: Chyba

Napsal: 06 bře 2016, 01:32
od Hanakocz
To co ti to varování říká. Do tří míst vkládáš dvě hodnoty.

Main.mysql.update("INSERT INTO MGCoins(nick, uuid, coins) VALUES ('" + uuid + p.getName() + "', '0');");


co třeba....
Main.mysql.update("INSERT INTO MGCoins(nick, uuid, coins) VALUES ('" + p.getName() + "', '" + uuid + "', '0');");

Re: Chyba

Napsal: 06 bře 2016, 01:40
od WorkiS
děkuji moc! :) K+

-- 07 bře 2016, 08:37 --

Zdravím,

vyskytl se mi další problém. Zkouším si udělat plugin na Rank, ale něčemu nerozumím. Když jsem si vytvořil Enum

Kód: Vybrat vše

OWNER("Majitel", ChatColor.DARK_RED),

PLAYER("Hrac", ChatColor.RED);

Jak to teď mám vložit to toho chatu? Mám udělané toto, když se hráč poprvé připojí na server, ale místo toho se má asi zakomponovat Rank:

Kód: Vybrat vše

Rank.OWNER;


V metodě createPlayer, která vytvoří uživatele a dá do databáze, že je Hráč mám zatím takto, což je nesmysl, když poté něco napíšu do chatu tak je to bílé, to chápu. Nejlépe bych místo toho Hrac dal Rank.PLAYER. Jak to teď udělat? Opět mi to nejde jako u předchozího příspěvku, děkuji.

Kód: Vybrat vše

Main.mysql.update("INSERT INTO Rank(uuid, rank) VALUES ('" + uuid + "', 'Hrac');");


Takto mi to nejde:

Kód: Vybrat vše

Main.mysql.update("INSERT INTO Rank(uuid, rank) VALUES ('" + uuid + "," Rank.ALL ");");

Re: Chyba

Napsal: 07 bře 2016, 13:50
od Hanakocz
1) možná by bylo vhodnější sem dát nějakou ucelenou ukázku kódu
2) Pravidlo č.1: "nejede to" je nepřípustné. Pokud chceš pomoci, vždy svoje tvrzení opírej o citace nebo výpisy chyb, které to vytvoří. Pokud to nejede, tak prostě vždy v nějakém php /mysql/java logu je vypsaná chyba. Programuješ, tak se tímto řiď! Kde není specifická chyba, není problém. Aspoň ne pro nás.

Re: Chyba

Napsal: 07 bře 2016, 14:00
od WorkiS

Kód: Vybrat vše

     public static void createPlayer(String uuid)
     {
       if (!playerExists(uuid)) {
          Main.mysql.update("INSERT INTO Rank(uuid, rank) VALUES ('" + uuid + "'," Rank.ALL ");");
       }
     }


-- 07 bře 2016, 13:11 --

http://prnt.sc/ac9idn

-- 07 bře 2016, 13:22 --

Takže chybělo mi tam +, aktuálně to mám takto:

Kód: Vybrat vše

Main.mysql.update("INSERT INTO Rank(uuid, rank) VALUES ('" + uuid + "'," + Rank.ALL ");");


Další chyba:

http://prnt.sc/ac9lr8

Re: Chyba

Napsal: 07 bře 2016, 19:18
od Hanakocz
Rank.all nemáš jednoduchý uvozovky kolem hodnoty