2012-03-12 27 views
5

Estoy tratando de encontrar la manera de ofuscar el código SQL en MySQL.¿Puedo ofuscar el código SQL en MySQL?

En las bases de datos Oracle existe la funcionalidad "envolver", pero no encontré ninguna similar. ¿Algunas ideas?

El objetivo final es que el cliente tenga algunas dificultades para comprender el código.

+9

¿Te importa si te pregunto por qué quieres hacer esto? Es solo que podemos ayudarlo mejor si conocemos su objetivo en lugar de un objetivo intermedio ... – Borealid

+3

Nunca lo encontrarán si coloca su código en procedimientos almacenados. – DOK

+0

Mis objetivos son los procedimientos y funciones porque 'quiero ser más difícil de leer. –

Respuesta

2

Creo que MySQL no tiene la capacidad de ofuscar el código. Puede encapsular todo el código de consulta SQL creando un STORED PROCEDURE, aunque no está encapsulado, pero al menos su consulta SQL no se muestra cuando se usa dentro de su código (PHP, .Net, y similares ...).

0

MySQL no tiene ninguna capacidad de ofuscación - podría escribir un código que sería confuso para leer por tener alguna otra tabla con valores definidos que puede utilizar las instrucciones IF contra para que su código sea difícil de leer ...

SELECT co1, co2, IF(3 > 18, co3, '') AS co3 FROM table INNER JOIN... 

etc ... o usar COUNT como parámetros en las declaraciones condicionales es lo mejor que obtendrá (obviamente, el rendimiento puede convertirse en un problema dependiendo de cómo "ofuscado").

+0

creando eso, está agregando trabajo adicional para el servidor. ¿Por qué no usar 'Procedimiento almacenado'? –

+1

No estoy sugiriendo que alguien use esta técnica, especialmente en una gran cantidad de datos ... ni quisiera ofuscar mi propio código, dando opciones OP, no entiendo completamente las circunstancias en por qué quiere ofuscar sus consultas, pero esta es una opción. –

Cuestiones relacionadas