phpmyadmin / phpmyadmin/sql-parser
CREATE TABLE statement not properly parsed or build
Offen
Dieses Issue hat noch niemand übernommen.
bug
help wanted
- Vorherrschende Sprache
- PHP
- Sterne
- 485
- Forks
- 119
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
$sql = 'CREATE TABLE tab1 (`col1` TIMESTAMP /*!40100 DEFAULT NULL */)';
$parser = new Parser($sql);
$s3 = $parser->statements[0]->build();
// $s3 wrongly contains end-of-comment
// CREATE TABLE tab1 (
// `col1` timestamp DEFAULT NULL */
//)
//PHP 7.1.18
//"name": "phpmyadmin/sql-parser",
//"version": "5.0.0",
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der PHP-Reproduktion unter Verwendung von Parser und statements[0]->build(), und untersuche dann, wie der versionierte MySQL-Kommentar in der CREATE TABLE-Anweisung tokenisiert und gerendert wird. Die Aufgabe ist abgeschlossen, wenn das generierte SQL nach DEFAULT NULL nicht mehr den schließenden Marker des Kommentars enthält und eine Regressionstestabdeckung für dieses Beispiel vorhanden ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- mysql, php, sql
- Bereich
- databases, devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100