server-spec:
OS: openSuse 13.2-tumbleweed
db-server: mysql-opensuse v.5.6.28
Mahlzeit - ich auch mal hier - WTF?
Tja, bin ja begeisterter Half-Life-fanboi und des Mods Sven Co-Op. Da ich selbst einen root habe und dort natürlich einen Server drauf laufen lasse wollte ich, nach dem ich nun lange genug Stabilitätstests durchgeführt habe den bekannten XP-Mod mit einbinden - und prompt gleich beim ersten Test knall ich auf die Nase.
Das DB-Backend nutzt zwei Queries:
[sql]#define QUERY_SELECT_SKILLS “SELECT xp
, playerlevel
, skillpoints
, medals
, health
, armor
, rhealth
, rarmor
, rammo
, gravity
, speed
, dist
, dodge
FROM %s
WHERE %s”
#define QUERY_UPDATE_SKILLS “INSERT INTO %s (uniqueid) VALUES (’%s’) ON DUPLICATE KEY UPDATE authid =’%s’,nick=’%s’,ip=’%s’,xp=’%d’,playerlevel=’%d’,skillpoints=’%d’,medals=’%d’,health=’%d’,armor=’%d’,rhealth=’%d’,rarmor=’%d’,rammo=’%d’,gravity=’%d’,speed=’%d’,dist=’%d’,dodge=’%d’”[/sql]
Und das meint mein MySQL-Server zum insert:
[sql]INSERT INTO scxpm_stats (uniqueid) VALUES (‘STEAM_0:0:17251289’) ON DUPLICATE KEY UPDATE authid =‘STEAM_0:0:17251289’,nick=‘Sen-Mithrarin’,ip=‘213.211.229.14’,xp=‘0’,playerlevel=‘0’,skillpoints=‘0’,medals=‘4’,health=‘0’,armor=‘0’,rhealth=‘0’,rarmor=‘0’,rammo=‘0’,gravity=‘0’,speed=‘0’,dist=‘0’,dodge=‘0’[/sql]
-> 1.Unerkanntes Schlüsselwort. (near "KEY" at position 78)
(mit phpMyAdmin 4.5.5.1)
Ich hab schon in der Doc zu meiner Server-Version nachgelesen - und mit copy’n’paste um Tippfehler auszuschließen. Ich hab auch versucht nach dem Fehler zu googlen - aber leider ist mein Such-String scheinbar zu komplex für Google und es kommen leider keine brauchbaren Ergebnisse (bin garantiert einfach mal wieder zu blöd n halbwegs sinnvollen Such-String einzugeben).
Da laut Doc das Command unterstützt werden müsste - mein Server aber meldet dass er es scheinbar nicht kennt - wundere ich mich halt woran es liegen könnte.
//ps - neues anti-spam-plugin? mir wird gerade unten neben dem save-button n hinweis-text angezeigt ~ denke liegt wohl dran weil ich erste mal von meinem rechner über meine neue IP post (wobei - hab ich auch schon übers handy ~ komisch)
– EDIT
Sehr merkwürdig: führe ich die Query vom cli aus bekomme ich plötzlich:
ERROR 1364 (HY000): Field 'authid' doesn't have a default value
Was geht denn bitte hier ab? - Ich versuchs mal mit default-values.
btw: Ja, den Fehler mit dem Leerzeichen zwischen authid und = hab ich bereits gefixt - daran liegts leider nicht.