Análisis estructurado
El lenguaje de consulta estructurado (SQL) es un lenguaje estandarizado para la consulta de la información de una base de datos. SQL se introdujo por primera vez como un sistema de bases de datos comerciales en 1979 y desde entonces ha sido el lenguaje de consulta favorita para los sistemas de gestión de base de datos que se ejecutan en sistemas grandes y medianos. Cada vez más, sin embargo, SQL está siendo apoyado por los sistemas de bases de datos de PC, ya que soporta las bases de datos distribuidas (véase la definición de base de datos distribuida). Esto permite que varios usuarios en una red informática puedan acceder a la misma base de datos al mismo tiempo. Aunque hay diferentes dialectos de SQL, sin embargo es lo más parecido a un lenguaje de consulta estándar que existe en la actualidad.Algunos problemas asociados los diagramas de flujo de datos han sido:
Inyección SQL
Sentencias condicionales con el tipo "Or 1=1" o "having 1=1" ofrecen respuestas "siempre correctas" (true o verdadero) por lo cual suelen ser usadas por los programadores como formas de comprobación. El problema para la seguridad de la página radica en que esta técnica es utilizada en combinación con diccionarios o fuerza bruta para la búsqueda, carácter por carácter, de una contraseña, un nombre de usuario, un número de teléfono o cualquier otra información que albergue la base de datos atacada; para ello se utiliza código SQL específico que "va probando" cada carácter consiguiendo un resultado positivo acumulable cuando hay una coincidencia. De esta manera se puede saber, por ejemplo, que una contraseña comienza por "F...", luego continúa con ".i...", y luego "..r...", etc (acumula "Fir..."), hasta dar con la palabra completa.