Hello there,

es kommt ein bisschen drauf an, wie man rechnet. Ich gehe davon aus, dass Ansagen wie Re oder Kontra 2 Punkte zählen (statt verdoppeln) und Absagen wie keine 90 1 Punkt.

Es gibt also folgende Punkte:

Ansage Re: 2 Punkte

Absage K90: 1 Punkt

120 Punkte erreicht gegen Absage K90: 1 Punkt

Sonderpunkt für Kontra gewinnt gegen Re (den gibts im gesunden Spiel immer wenn Ko gewinnt): 1 Punkt.

= 5 Punkte.

Dazu ggf. noch Sonderpunkte für Fuchs/Karlchen im letzten Stich, gefangene Füchse oder einen Doppelkopf.

MfG

Alex

...zur Antwort

Arma3 Frage Spieler Informationen zu UID [ID] ab?

Servus Leute,

was könnte da das problem sein? habe alle Passwörter überprüft, aber finde keine lösung.

Wäre cool, wenn mir da jemand helfen könnte, vielen Dank schonmal im Vorraus.

Folgend die Log Datei, die ich nicht wirklich verstehe:

[15:55:23 +02:00] [Thread 675730457] extDB: Version: 35 [15:55:23 +02:00] [Thread 675730457] extDB: Windows Version [15:55:23 +02:00] [Thread 675730457] Message: Arma Linux Servers are using Older Physic Library (than Windows Servers), due to Debian 7 using old version of Glibc [15:55:23 +02:00] [Thread 675730457] Message: If you like extDB consider donating or bug BIS to drop support for Debian 7 thanks, so Linux Servers get same Physic Library Version as Windows [15:55:23 +02:00] [Thread 675730457] Message: Note currently most/all development for extDB is done on a Linux Server [15:55:23 +02:00] [Thread 675730457] Message: Torndeco: 24/01/15 [15:55:23 +02:00] [Thread 675730457] [15:55:23 +02:00] [Thread 675730457] extDB: Found extdb-conf.ini [15:55:23 +02:00] [Thread 675730457] extDB: Detected 32 Cores, Setting up 6 Worker Threads (config settings) [15:55:23 +02:00] [Thread 675730457] extDB: Database Type: MySQL [15:55:23 +02:00] [Thread 675730457] extDB: Database Session Pool Started [15:55:23 +02:00] [Thread 675730457] extDB: DB_RAW_V3: Initialized: ADD_QUOTES True [15:55:23 +02:00] [Thread 3394128745] extDB: DB_RAW_V3: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_execute error [mysql_stmt_error]: PROCEDURE ni238115_1_DB.resetLifeVehicles does not exist [mysql_stmt_errno]: 1305 [mysql_stmt_sqlstate]: 42000 [statemnt]: CALL resetLifeVehicles [15:55:23 +02:00] [Thread 1361138702] extDB: DB_RAW_V3: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_execute error [mysql_stmt_error]: PROCEDURE ni238115_1_DB.deleteDeadVehicles does not exist [mysql_stmt_errno]: 1305 [mysql_stmt_sqlstate]: 42000 [statemnt]: CALL deleteDeadVehicles [15:55:23 +02:00] [Thread 1748363220] extDB: DB_RAW_V3: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_execute error [mysql_stmt_error]: PROCEDURE ni238115_1_DB.deleteOldGangs does not exist [mysql_stmt_errno]: 1305 [mysql_stmt_sqlstate]: 42000 [statemnt]: CALL deleteOldGangs [15:55:23 +02:00] [Thread 3394128745] extDB: DB_RAW_V3: Error StatementException: SQL: CALL resetLifeVehicles [15:55:23 +02:00] [Thread 1361138702] extDB: DB_RAW_V3: Error StatementException: SQL: CALL deleteDeadVehicles [15:55:23 +02:00] [Thread 223059959] extDB: DB_RAW_V3: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_execute error [mysql_stmt_error]: PROCEDURE ni238115_1_DB.deleteOldMessages does not exist [mysql_stmt_errno]: 1305 [mysql_stmt_sqlstate]: 42000 [statemnt]: CALL deleteOldMessages [15:55:23 +02:00] [Thread 1748363220] extDB: DB_RAW_V3: Error StatementException: SQL: CALL deleteOldGangs [15:55:23 +02:00] [Thread 3743252631] extDB: DB_RAW_V3: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_prepare error [mysql_stmt_

...zur Frage

Hello there,

also ich kenne das Spiel nicht, aber der Log sagt im Wesentlichen aus, dass der MySQL Server bestimmte Prozeduren (eine Prozedur ist einfach gesagt ein bereits vorgefertigtes SQL-Statement), von denen das Skript erwartet, dass diese in der betreffenden Datenbank abgelegt sind, nicht finden kann, und daher die entsprechenden Befehle nicht ausführen kann.

Also eigentlich handelt es sich daher um einen Fehler in der Software.

MfG

Alex

...zur Antwort

Hello there,

leider hat eine - meiner Ansicht nach - unzureichende und teilweise FALSCHE Antwort bereits einen Stern erhalten.

Ich liefere daher mal eine vollwertige Antwort.

SQL steht für Structured Query Language, also strukturierte Abfragesprache.
Es handelt sich dabei um eine deklarative Datenbanksprache, um auf relationale Datenbanksysteme zuzugreifen (dazu gehören etwa MySQL, Microsoft SQL Server, Oracle DB, Informix, MariaDB, PostgreSQL und viele weitere)

SQL ist eine standardisierte Sprache. Es gibt also Normen dafür, wie die Sprache arbeitet und was sie können sollte. Dabei handelt es sich aber lediglich um *Empfehlungen*.

Verschiedene Anbieter vertreiben verschiedene relationale Datenbanksysteme (siehe oben). Nehmen wir hier mal dein Beispiel MySQL.

Bei MySQL handelt es sich zum einen erstmal um ein Datenbanksystem der Firma Oracle. Es werden verschiedene Produkte angeboten, im Wesentlichen verschiedene Editionen des MySQL Servers die von kostenlos bis ziemlich teuer reichen.

Umgangssprachlich bezeichnet MySQL aber nicht nur das Programm selbst, sondern auch die Abfragesprache MySQL.

Die Sprache MySQL ist eine Implementierung des Standard-SQL. Jeder Anbieter implementiert sein SQL etwas anders. Es werden etwa auch eigene Befehle ergänzt, die im Standard nicht vorkommen, oder auch die Syntax verändert.
Beispielsweise definiert der SQL-Standard, dass ein UPDATE Befehl grundsätzlich auf eine Tabelle angewandt wird. MySQL erlaubt dagegen auch, dass ein UPDATE Befehl über mehrere Tabellen hinweg ausgeführt wird.

Ein weiteres bekanntes Beispiel etwa ist die Begrenzung der ausgegebenen Datensätze bei einem SELECT-Statement.
In der Implementierung MySQL nutzt man hier den LIMIT-Ausdruck.
In Microsofts SQL-Implementierung namens T-SQL verwendet man den TOP-Ausdruck, der macht ansich das Gleiche, aber die Syntax ist komplett anders.

Du musst also beim Arbeiten mit Datenbanken immer darauf achten, ob das entsprechende Datenbanksystem auch die Befehle, die du (allgemein formuliert) in SQL schreibst, auch von diesem System unterstützt werden.

Hoffe ich konnte dir helfen.

MfG

Alex

...zur Antwort

Hello there,

nein, so wie du das machst, würdest du ein kartesisches Produkt über drei Tabellen machen und hättest 8 mal so viele Ergebnisse wie du eigentlich willst, weil du alles mit allem kombinieren würdest.

Ein Join ist unabdingbar. Wenn du aber das Schlüsselwort JOIN nicht verwenden willst, kannst du implizite Joins nehmen, so wie du das hier gemacht hast.

Dann musst du aber weitere WHERE-Statements mit AND hinzufügen und jeweils den Fremdschlüssel BenutzerID aus den Tabellen Infos und Addresses gleichsetzen mit dem Primärschlüssel BenutzerID aus der Tabelle users.

Also vermutlich etwa so:

SELECT * 
FROM Users, Infos, Addresses
WHERE infos.UserID = users.UserID
AND addresses.UserID = users.UserID
AND Users.User_TOKEN = "XY

Ganz besonders hässlich ist natürlich das SELECT * über drei Tabellen. Icbh kann mir nicht vorstellen, dass du das wirklich alles brauchst. Selektiere - außer zum puren Testen - immer nur die Spalten die du auch brauchst.

Hoffe ich konnte dir helfen.

MfG

Alex

...zur Antwort

Meine mysql startet nicht mehr?

Hallo leute.

Seit 2-3 wochen startet meine mysql nicht mehr und der Port ist nicht belegt. Ich hab auch schon in Google danach gesucht gabs viele Lösungen aber kein hat mir geholfen.

wenn ihr die Lösung wisst könnt ihr mir bitte helfen? Das wär lieb:-)

Die log datei 2015-07-07 16:04:04 3060 [Note] Plugin 'FEDERATED' is disabled. 2015-07-07 16:04:04 3d18 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator. 2015-07-07 16:04:04 3060 [Note] InnoDB: Using atomics to ref count buffer pool pages 2015-07-07 16:04:04 3060 [Note] InnoDB: The InnoDB memory heap is disabled 2015-07-07 16:04:04 3060 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions 2015-07-07 16:04:04 3060 [Note] InnoDB: Memory barrier is not used 2015-07-07 16:04:05 3060 [Note] InnoDB: Compressed tables use zlib 1.2.3 2015-07-07 16:04:05 3060 [Note] InnoDB: Not using CPU crc32 instructions 2015-07-07 16:04:05 3060 [Note] InnoDB: Initializing buffer pool, size = 16.0M 2015-07-07 16:04:05 3060 [Note] InnoDB: Completed initialization of buffer pool 2015-07-07 16:04:05 3060 [Note] InnoDB: Highest supported file format is Barracuda. 2015-07-07 16:04:06 3060 [Note] InnoDB: 128 rollback segment(s) are active. 2015-07-07 16:04:06 3060 [Note] InnoDB: Waiting for purge to start 2015-07-07 16:04:06 3060 [Note] InnoDB: 5.6.21 started; log sequence number 1665234 2015-07-07 16:04:06 3060 [Note] Server hostname (bind-address): '*'; port: 3306 2015-07-07 16:04:06 3060 [Note] IPv6 is available. 2015-07-07 16:04:06 3060 [Note] - '::' resolves to '::'; 2015-07-07 16:04:06 3060 [Note] Server socket created on IP: '::'. 2015-07-09 17:35:08 28864 [Note] Plugin 'FEDERATED' is disabled. d:\xammp\mysql\bin\mysqld.exe: Table 'mysql.plugin' doesn't exist 2015-07-09 17:35:08 28864 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 2015-07-09 17:35:08 54f0 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator. 2015-07-09 17:35:08 28864 [Note] InnoDB: Using atomics to ref count buffer pool pages 2015-07-09 17:35:08 28864 [Note] InnoDB: The InnoDB memory heap is disabled 2015-07-09 17:35:08 28864 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions 2015-07-09 17:35:08 28864 [Note] InnoDB: Memory barrier is not used 2015-07-09 17:35:08 28864 [Note] InnoDB: Compressed tables use zlib 1.2.3 2015-07-09 17:35:08 28864 [Note] InnoDB: Not using CPU crc32 instructions 2015-07-09 17:35:09 28864 [Note] InnoDB: Initializing buffer pool, size = 16.0M 2015-07-09 17:35:09 28864 [Note] InnoDB: Completed initialization of buffer pool 2015-07-09 17:35:09 28864 [Note] InnoDB: Highest supported file format is Barracuda. 2015-07-09 17:35:09

mfg blonhk112

...zur Frage

Hello there,

in deinem mysql-Verzeichnis befindet sich im Ordner "bin" eine Datei, die schimpft sich mysql_upgrade.exe. Ich geh davon aus, dass du natürlich Windows nutzt.^^

Führ die einfach mal aus und versuch es dann nochmal ;)

MfG
Alex

...zur Antwort

Hello there,

JavaScript wird clientseitig, also sprich bei dir im Browser interpretiert und ausgeführt. Vermutlich liegt das Problem also bei dir selbst. Weil es ist sehr unwahrscheinlich, dass das JavaScript, das der Server dir liefert, fehlerhaft ist.

Zwei Möglichkeiten hast du zunächst mal.
Erstmal würd ich nen anderen Browser ausprobieren. Wenn das nicht hilft, kannst du in fast jedem Browser F12 drücken um die Konsole zu öffnen. Da kannst du dann beobachten, was im Hintergrund alles geschieht wenn du im Browser öffnest. Da kann man sich auch JavaScriptfehler ausgeben lassen.
MfG
Alex

...zur Antwort

Hello there,

bevor du da jetzt ewig rumrätselst, ich bin auch der Meinung, dass der SQL-Befehl falsch wird und das ist vermutlich dann dadurch, dass die Klassen-Sessionvariable keinen oder nen falschen Wert hat.
Füg doch einfach mal vor der while-Schleife probehalber ein

echo $sql;
return;
ein und poste dann was das ausgibt.

...zur Antwort

Hello there,

von der Idee her passt das doch schonmal. Ich würde es aber dennoch nicht prozedural schreiben, sondern objektorientiert, um Fehler zu vermeiden.
Zudem ist eine Auslagerung in eine Variable für jede einzelne Reihe total überflüssig
Ich verwende aber mal fetch_object statt fetch_assoc:

while($row = $shots->fetch_object())
{
echo "<a href ='stimmen.php?name=" . $row->name . "&code=" . $code . "'>" . $row->name . "</a>";
}

So sollte es klappen.

Hoffe ich konnte dir helfen.

MfG

Alex

...zur Antwort

Hello there,

eine zweite Tabelle ist hier nicht nötig.

Wenn es mehrere Werte sein können, machst du es folgendermaßen:

SELECT * FROM user_data
WHERE ID NOT IN(1, 4, 6, 3);

Hast du das Ganze vielleicht dynamisch als Array in PHP, dann kannst du diese Zahlen auch einfügen in das Statement:

$sql = "SELECT * FROM user_data
WHERE ID NOT IN ( " . implode(',', $werte) . ");";

Hoffe ich konnte dir helfen.

MfG

Alex


...zur Antwort

Hello there,

ahmmm ich würde das nicht mit der Datenbank machen. Dein Schimpfwortfilter ist ja im Prinzip ne Blacklist. Wenn die nicht gerade Millionen Einträge hat, dann würde ich eher auf ne Textdatei zugreifen, die ist vermutlich schneller. Solche gibts auch im Internet
Etwa hier: http://www.hyperhero.com/de/insults.htm
Auch wenn da jetzt ziemlich komische Sachen dabei sind Oo.

Im Idealfall kannst du die Liste dann im Arbeitsspeicher halten, so dass sie nur einmalig ausgelesen werden muss und anschließend kannst du jeweils den Vergleich mit deinen Gästebucheinträgen machen.
MfG
Alex

...zur Antwort

Hello there,

du gehst wahrscheinlich auch falsch vor. Im Query selbst, den du präparierst, verwendest du keine Variablen mehr, sondern Wildcards, in Form von Fragezeichen. Wobei es prinzipiell in deinem Fall möglich ist, da du Elemente wie ne Spalte anwählen willst. Ganz davon abgesehen, dass es wenig Sinn macht, erst alles mit nem Stern zu selektieren und dann nochmal bestimmte Spalten. Das wäre doppelt gemobbelt. Aber deine Syntax passt auch nicht. versuch es mal folgendermaßen:

Zum Beispiel:
SET @spalten = "Spalte1, Spalte2" ;....etc.

@query = Concat('SELECT *', @spalten, ' FROM....);
PREPARE newstmt FROM @query;
EXECUTE newstmt;

Hoffe ich konnte dir helfen.

MfG


Alex


...zur Antwort

Hello there,

wenn es wirklich sauber als DATE gesspeichert ist, kannst du es noch etwas hübscher machen und zwar so:

SELECT `Vorname`

FROM `Adressen`

WHERE date_format(`geburtstag`, '%m-%d') = "01-26";

als Beispiel

Du würdest hier genau Monat und Tag extrahieren und könntest dann damit vergleichen. Das macht allerdings nur dann Sinn und Effizienz, wenn du diese Vergleichswerte wie etwa 01-26 auch dynamisch generieren kannst. Etwa in PHP mit Stringaddition.

MfG

Alex

...zur Antwort

MySQL select Abfrage mit spezieller Gruppierung

Hallo Leute,

ich stehe zur Zeit bei einer etwas (für mich) komplexen mySQL bzw. PHP Abfrage. Vielleicht könnt ihr mir einen Schubs in die richtige Richtung geben?!

Ich frage eine Tabelle mit verschiedenen Spalten ab, die auch verschiedene Werte beinhalten, die ich via AVG bzw. SUM berechne. Soweit so gut. In einer Spalte allerdings sind verschiedene Produktnamen die ich gruppieren will, allerdings gruppieren solange ein bestimmtes Zeichen im Produktnamen nicht erreicht ist.

Beispielabfrage:

SELECT COUNT(  `product` ) AS anzahl, AVG(  `aufwand` ) AS aufwand,  `product` FROM  `tabelle` WHERE 1 AND datum BETWEEN "$datumsvariable"  AND "$datumsvariable2'" AND `product` != "" AND  `product` !=  "\"\"" GROUP BY  `product`  ORDER BY  `aufwand`

Soweit so gut... Allerdings gibt es nun eben diese Produktnamen mit Klammern "(", die Details beinhalten die ich nicht als eigene Gruppe will. zB.

  • produktname AB
  • produktname CD
  • produktname CD (details bla bla)
  • produktname CD (details bla bla)
  • produktname AB
  • produktname AB (details bla bla)
  • produktname CD

Meine obige mySQL-Abfrage würde nun 4 Gruppen machen:

  • produktname AB
  • produktname AB (details bla bla)
  • produktname CD
  • produktname CD (details bla bla)

Ich will aber

  • produktname AB
  • produktname CD

Die produktname AB (details bla bla) und produktname CD (details bla bla) sollen enthalten sein in produktname AB bzw. produktname CD

Ich hoffe das war soweit verständlich und ihr könnt mir helfen.

Danke im Voraus, lg DeepX

...zur Frage

Hello there

Ist das wirklich so kompliziert? ich bin irritiert.

Ganz abgesehen davon, dass du vermutlich ungeschickt deine Tabelle designt hast.

Wenn deine Gruppierung nach nem bestimmten Teil erfolgen soll, der immer gleich ist, zum Beispiel immer Produktname AB oder Produktname CD

könntest du folgendermaßen vorgehen...

SELECT .....

FROM...

WHERE....

GROUP BY substring(product, -length(product), 3);

Bei dieser Formulierung würde so gruppiert werden, dass nicht nach vollständigen Produktnamen gruppiert werden würde, sondern nur nach den ersten drei Zeichen. Das klappt halt natürlich nur, wenn der Anfangsteil immer gleich bzw gleich lang ist. Wenn das nicht der Fall ist, wirds komplizierter, dann ist evtl entweder ein RegExp-Vergleich nötig oder du musst nach einem DELIMITER Ausschau halten, zum Beispiel ein Leerzeichen, das würde auch mit substring() gehen.

https://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring-index

Hoffe ich konnte dir helfen

MfG

Alex

...zur Antwort

Hello there,

dann ist das Datenbankdesign schlecht.

Du musst ja irgendwie noch Ausdrücken, welche Sachen zusammen gehören.

Die Spalte Bestellung würde ich dafür nehmen, dass die praktisch nen eigener Index wird und das was du da derzeit stehen hast, würde ich inne neue Spalte "Beschreibung" oder "Artikel" auslagern.

Dann kannst du nämlich die Bestellung auch etwa einer bestimmten Person zuordnen.

Wenn du das korrekt machst, wären solche Vorgehensweisen wie du das grad planst nicht mehr nötig. Weil du dann immer weißt was zusammen gehört.

So wie du das machst, müsstest du umständlich und vor allem händisch immer die Einträge zusammen basteln, das würd ich nicht machen.

Schreib mal ne PN an mich, dann klären wir das.

MfG

Alex

...zur Antwort

Hello there,

in dem Fall bedeutet der Haken, dass du einen Nullwert explizit erlaubst. Falls du dir irgendwann mehr Komfort zulegen willst und die kostenlose MySQL Workbench verwenden möchtest.

http://www.mysql.de/products/workbench/

Dann musste aufpassen, da ist es nämlich umgekehrt. Da setzt man den Haken dafür, dass Null eben NICHT erlaubt ist, also für NN = NOT NULL.

MfG

Alex

...zur Antwort

Hello there,

mir hat gutefrage.net natürlich auch was gebracht. Neben einem USB-Stick, den ich bis heute für meine portable Entwicklungsumgebung in Ehren halte, hab ich natürlich auch einige nette Leute kennen gelernt und bei Recherchen für meine Antworten auch viel neues Wissen aneignen können. Allein dafür hat es sich schon gelohnt :)

Und ich denke, ich konnte vielen Leuten hier helfen in den letzten 4 Jahren. Dafür sprechen rund 380 Sterne bei gerade mal rund 1700 Antworten :)

MfG

Alex

...zur Antwort

Hello there,

was du auch noch machen kannst - ich versteh aber nicht, warum du kein XAMPP verwenden willst, ist dass du eine IDE verwendest, die einen eingebauten Webserver hat. Dafür wäre zum Beispiel die kostenlose Aptana Studio IDE denkbar.

Hier:

http://www.aptana.com/

Aber worum du definitiv nicht rumkommst, ist dass du dann lokal bei dir PHP installieren musst. Weil um PHP Code auszuführen und auch auf Fehler zu überprüfen, braucht es nunmal den Sprachinterpreter.

...zur Antwort