Aprendiendo/Enseñando SQL

Hola a todos, bueno este es mi primer post y quería saber si alguien puede ayudarme. Me he descargado el libro de base de datos de UOC y está realmente bien, pero investigando un poco por la red he podido leer que algunas universidades desarrollan su propio software para que los alumnos puedan aprender de forma interactiva y mas eficiente el lenguaje SQL.

Quisiera saber si existen algún tipo de software disponible similar a estos que he mencionado y porque no, cual sería la manera mas adecuada para aprender SQL, ya que por mi parte la sintaxis está clara (bueno eso creo), esta sintaxis puede resultar mas o menos difícil y mas o menos extensa, pero el problema es que muchas veces los alumnos no somos capaces de visualizar las consultas que se nos plantean, y creo que este tipo de software hacen un poco de acompañantes en este proceso de aprendizaje.

 

Un saludo.

Siento comunicarte que no existe nada de eso. El único método es o bien trabajar como programador para ver y crear miles de scripts distintos o inventartelos.

Yo te aconsejaría crearte una base de datos (bajate la express edition con las tablas de ejemplo) y vete practicando por tu cuenta. Crea tablas nuevas, elimina registros, haz consultas y todo lo que se te ocurra.

La teoría de sql es simple pero cuando empieces a hacer consultas y scripts te empezarán a venir dudas, no dudes en preguntar.

 

saludos,

En respuesta a por drakoniano

Muchas gracias por tu pronta respuesta drakoniano, la verdad es que estoy siguiendo las pautas que comentas en el post desde que empeze a aprender SQL, pero no obstante quería saber si existía ese tipo de software. Quizás de manera comercial no exista, pero si como comentaba a través de las propias universidades que los desarrollan o quizás solo son prototipos con vista a una futura creación.

 

Esta forma de proceder por parte de las universidades me parece muy correcta, pues aunque esté la manera clásica de aprender como se ha hecho siempre, introducir nuevas herramientas y tecnologías que faciliten y mejoren esta labor siempre creo que es un acierto.

 

Bueno el software que encontre y al que me refería en el post se llama LEARN-SQL creo que es de la UOC, aunque no estoy seguro si es para aprendizaje (aunque su nombre parece bastante descriptivo) o para corrección de ejercicios. También creo que existen como proyectos de carrera Videojuegos para aprender SQL, basados en los juegos clásicos como el Ahorcado, Trivial, Simon y otros.

 

Gracias de nuevo. Un saludo.

 

 

En respuesta a por save

Soy de la misma opinión de Drakoniano.

Yo no me complicaría la vida buscando asistentes porque el funcionamiento básico de SQL se aprende en muy poco tiempo sólo con un poco de práctica, no necesitas más.

Te recomiendo que comiences probando comandos de selección sobre una sola tabla, y poco a poco vayas complicando las sentencias. Cuando controles la sintaxis básica utiliza JOINS para trabajar con más de una tabla a la vez. Una vez que hayas hecho esto ya tendrás el 80% de lo que vas a utilizar de SQL, y además sin riesgo de modificar o borrar por equivocación ningún dato.

Después prueba las agrupaciones (GROUP BY) (HAVING..), y por último pasa a sentencias que modifiquen datos (INSERT, UPDATE, DELETE).

Después explora las sentencias básicas DDL para crear y manipular objetos (CREATE, DROP..). Hazlo sólo sobre tablas para no complicarte.

Cuando domines todo esto, con el tiempo ya irás haciendo cosas más complicadas, como trabajar con vistas, utilizar otros objetos de bases de datos o explorar opciones de optimización SQL, pero con lo anterior ya sabrás utilizar SQL, y cuando tengas que hacer alguna cosa más complicada sólo tendrás que consultar cómo hacerlo, nadie se sabe de memoria toda la sintaxis.

 

Eso sí, si encuentras esos juegos sobre SQL compártelos, no sabía que existieran, y puede ser divertido probarlos!

En respuesta a por Carlos

Bueno aunque pudiera parecer lo contrario yo también estoy de acuerdo con vosotros, soy partidario del estudio y del trabajo diario para aprender y mejorar. No soy de esas personas que piensan que un software lo va a hacer todo por él, entre otras cosas porque somos nosotros (las personas) quienes enseñamos al software a que realice dichas tareas.

Soy estudiante del Ciclo Formativo de Grado Superior de Desarrollo de Aplicaciones Informáticas, y toda la secuencia que habéis descrito sobre el aprendizaje ya la he visto más o menos. Ya he visto todo lo relacionado con DDL, DML y DCL, por supuesto dentro del nivel que existe en este ciclo, pero lo que quiero decir es que estoy familiarizado con ello.

A pesar de ello,  busco otras formas (siempre que estén contrastadas y sea eficientes) de fortalecer mi aprendizaje, ya que en esencia el lenguaje SQL no es tan complejo ni tan amplio como puede ser un lenguaje de programación (ya que no es un lenguaje de programación), pero si que en principio cuando las consultas (sobre todo) aumentan de complejidad quizás los alumnos nos perdemos un poco y no somos capaces de ver con claridad lo que se quiere obtener en dicha consulta.

Dejo el enlace que encontré sobre los juegos que comentaba para el aprendizaje de SQL, es un proyecto de unos alumnos de la UCM, no es el videojuego en concreto.

Espero no haberme equivocado mucho en mi explicación quizás lo he liado todo un poco.

eprints.ucm.es/8974/1/Videojuego_educativo_para_el_aprendizaje_de_SQL.pdf