sql >> Database >  >> RDS >> Mysql

waarom mysql mijn codeweergave wijzigen?

Wat je ziet zijn problemen die het gevolg zijn van het compileren en vervolgens decompileren van de SQL.

human readable SQL -> compiled form -> human readable SQL

Maak je geen zorgen, het is allemaal gelijkwaardige code. Als je een voorbeeld wilt, schrijf dan wat JSON met de hand, voer het door een JSON-parser en zet die gegevens vervolgens terug in JSON. Het zal er niet hetzelfde uitzien als het origineel.

Dit is een veelvoorkomend probleem bij het converteren van gegevens die bekend staat als "round tripping". Zonder extra werk gaat niet-semantische informatie zoals opmerkingen, inspringingen en haakjes (of het ontbreken daarvan) verloren. MySQL kan ook optimalisaties en semantische transformaties toepassen, zoals het omzetten van uw FROM/WHERE in een JOIN. Het maakt ook impliciete code en standaardinstellingen (zoals ALGORITHM = UNDEFINED ) expliciet.

Als u het resultaat van een rondreis ziet, kunt u subtiele bugs in uw code opsporen, vooral in de volgorde van bewerkingen. Een decompiler kan soms worden gevraagd om extra haakjes toe te voegen om de volgorde duidelijk te maken.

Het heeft geen zin in MySQL om je originele CREATE's voor tabellen en views op te slaan, ze worden nutteloos als ALTER wordt gebruikt. Het is echter mogelijk om uw vragen terug te sturen zoals oorspronkelijk geschreven.




  1. geheugenlek in php-script

  2. Mysql-items bestellen op de nieuwste van 2 datums

  3. Hoe ontsnap ik aan speciale tekens in MySQL?

  4. Welke Visual Studio heb ik nodig voor MySQL?