Beiträge getaggt mit mysql

TYPO3 SQL Queries Debuggen

Wie man TYPO3 SQL Queries debuggen kann, ändert sich ja immer ein bisschen. In der Version 7.6. funktioniert das:

$parser = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Persistence\Generic\Storage\Typo3DbQueryParser');
$queryParts = $parser->parseQuery($query);
\TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($queryParts);

Diesen Codeschnipsel in die Repository-Funktion vor $query->execute() einsetzen.

Zeitabfrage in MySQL

Es sollen Datensätze selektiert werden, die in einem bestimmten Jahr abgelegt worden sind. Im Feld ‚date‘ jedes Datensatzes steht ein Timestamp, der beim Speichern gesetzt worden ist. Mit dieser SQL-Abfrage lassen sich ohne Umrechnung die Datensätze aus dem richtigen Zeitraum selektieren:

  1. SELECT * FROM documents WHERE FROM_UNIXTIME(date, "%Y") = 2008

Die MySQL-Funktion FROM_UNIXTIME wandelt einen Timestamp in einen Wert entsprechend der Formatierung um. Gleiches läßt sich für einen Monat machen (Formatstring ist %c). Das wäre ein Beispiel für den Monat April.

  1. SELECT * FROM documents WHERE FROM_UNIXTIME(date, "%c") = 4

PS: eigentlich ist es nicht schön, ein Feld ‚date‘ zu nennen, da es in MySQL ein reservierter Sting (=Funktion) ist.

Tags:

Geschrieben in default | Kommentare deaktiviert für Zeitabfrage in MySQL

MySQL Shell-Kommandos

Datenbank Dump: nach -u folgt der Bentuzername, bei -p wird ein Passwort verlangt (man kann es direkt dahinter angeben, sollte man aber nicht), bei -v bekommt man angezeigt, was grade passiert. Und mit > dateiname.sql wird die Ausgabe in die gleichnamige Datei geleitet.

  1. mysqldump -u benutzername -p -v datenbankname > dateiname.sql

Datenbank Dump wieder einspielen:

  1. mysql -u benutzername -p -v datenbankname < dateiname.sql

Tags:

Geschrieben in default, TYPO3 | Kommentare deaktiviert für MySQL Shell-Kommandos