Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

por que o mysql altera minha visualização de código?


O que você está vendo são problemas resultantes da compilação e descompilação do SQL.
human readable SQL -> compiled form -> human readable SQL

Não se preocupe, é tudo código equivalente. Se você quiser um exemplo, escreva algum JSON à mão, execute-o por meio de um analisador JSON e transforme esses dados novamente em JSON. Não vai ficar igual ao original.

Este é um problema comum na conversão de dados conhecido como "round trip". Sem trabalho extra, informações não semânticas como comentários, recuo e parênteses (ou a falta deles) são perdidas. O MySQL também pode aplicar otimizações e transformações semânticas, como transformar seu FROM/WHERE em um JOIN. Também está fazendo código implícito e padrões (como ALGORITHM = UNDEFINED ) explícito.

Ver o resultado de uma viagem de ida e volta pode ajudá-lo a identificar bugs sutis em seu código, especialmente sobre a ordem das operações. Às vezes, um descompilador pode ser solicitado a adicionar parênteses extras para tornar a ordem óbvia.

Não faz sentido o MySQL armazenar seus CREATEs originais para tabelas e visualizações, eles se tornam inúteis se ALTER for usado. No entanto, pode ser possível retornar suas consultas como originalmente escritas.