lunes, 21 de diciembre de 2009

Sintaxis SQL en HSQL Database Manager

Para la asignatura de DASDI, se nos ha proporcionado una SGBD integrado en cada proyecto llamado HSQL Database Manager.

NOTA: Un buen tutorial donde se explica un poco este gestor.

Hasta ahora he trabajado con MySql, SqlDeveloper para Oracle y es la primera vez que trabajo con este, por lo que estoy notando ciertas diferencias.


Lo que más me está llamando la atención es que existen diversas sintaxis para cada gestor y, si tenemos en cuenta que soy bastante nueva en el manejo de las bases de datos, pues mi desconcierto es mayor.

He empezado a realizar la entrega final partiendo como base de un ejemplo dado en clase, el cual tiene una base de datos ya elaborada sobre una gestión de alumnos. A medida que avanzo me veo en la necesidad de modificar ciertos valores, atributos, propiedades, varias cosas en general; y, como no, voy encontrando diversos problemas con algunas sentencias que no funcionaban para HSQL.
Tras varias pruebas y busquedas por internet las he ido encontrado y como va a ser tan probable que las vuelva a necesitar como que las olvide, pues las voy a ir recogiendo en este post:

- Cambiar el nombre a una columna o propiedad de una tabla
ALTER TABLE alumno ALTER apellidos RENAME TO sexo

- Modificar una propiedad para que no pueda ser null
ALTER TABLE mii ALTER id INTEGER NOT NULL

- Modificar un dato
UPDATE alumno SET peso='gordo' WHERE id='2''

- Añadir nueva columna o propiedad a una tabla
ALTER TABLE alumno ADD pelo VARCHAR(20)

- Renombrar una tabla
ALTER TABLE alumno RENAME TO mii

- Cambiar el tipo de una columna o propiedad
ALTER TABLE mii ALTER sexo INTEGER

- Crear una tabla con atributo auto incremento
CREATE TABLE jugador (id_jugador INTEGER NOT NULL IDENTITY, login VARCHAR NOT NULL, password VARCHAR NOT NULL, nombre VARCHAR)

- Añadir atributo auto incremento a una propiedad
ALTER TABLE jugador ALTER id_jugador INTEGER NOT NULL IDENTITY

- Insertar un dato en una tabla
INSERT INTO jugador (login, password, nombre) VALUES ('admin', 'password', 'Administrador')

- Eliminar clave primaria de una tabla
ALTER TABLE jugador DROP PRIMARY KEY

- Añadir una clave unica a una tabla
ALTER TABLE jugador ADD UNIQUE(login)

- Añadir clave externa a una tabla
ALTER TABLE mii ADD FOREIGN KEY(id_jugador) REFERENCES jugador(id_jugador)

- Añadir un atributo fecha a una tabla
ALTER TABLE jugador ADD COLUMN lastvisita DATE

- Modificar el tipo de atributo fecha con hora
ALTER TABLE jugador ALTER lastvisita DATETIME

- Añadir una entrada con la fecha actual
UPDATE jugador SET lastvisita=curdate() where id_jugador='0'

- Añadir una entrada con fecha y hora actual
UPDATE jugador SET lastvisita=now() where id_jugador='0'

1 comentario:

  1. Buaaaah!! Llevaba horas buscando buena información.
    ¿Por fin me topo con tu blog, y tu post del 2009! jajajajaj

    Gracias!!

    ResponderEliminar