¡Esta es una revisión vieja del documento!
Tabla de Contenidos
SQL
Información general de lenguaje SQL, motores y herramientas.
- Información General - SQL.
Expresiones Generales
Tablas
La instrucción CREATE TABLE crea tablas con columnas siguiendo tipos de datos.
CREATE TABLE tabla ( columna1 tipo1 modificadores... , columna2 tipo2 modificadores... , .... PRIMARY KEY (tupla...) );
Este comando crea una tabla llamada tabla
con N columnas, llamadas columna1...columnaN
, con tipos y modificadores cada uno en su línea. Las llaves primarias de la tabla se designan juntando las columnas en una tupla...
.
Por ejemplo:
CREATE TABLE libro ( isbn VARCHAR(20) NOT NULL, titulo VARCHAR(80) NOT NULL, autor INTEGER, edicion INTEGER, anyo INTEGER hardprint BOOLEAN, hardcover BOOLEAN, PRIMARY KEY (isbn) );
Crea una tabla con la estructura siguiente:
Table "public.libro" Column | Type | Collation | Nullable | Default -----------+-----------------------+-----------+----------+--------- isbn | character varying(20) | | not null | titulo | character varying(85) | | | author | integer | | | edicion | integer | | | anyo | integer | | | hardprint | boolean | | | hardcover | boolean | | | Indexes: "libro_pkey" PRIMARY KEY, btree (isbn)
Si se tiene los privilegios adecuados, una tabla creada se elimina con DROP tabla
.
En MySQL es posible recuperar la sentencia que creó una tabla con SHOW CREATE TABLE tabla
.
En lenguaje SQL no hay una forma estandarizada para listar tablas. En distintos motores existen distintos mecanismos.
PostgreSQL | MySQL | SQLite | |
---|---|---|---|
Mostrar tablas de la conexión actual | \dt | show tables; | |
Buscar tablas en el sistema | select tablename from pg_catalog.pg_tables\\ where schemaname="midb" | select table_name from information_schema.tables\\ where table_schema="midb" |
Mostrar
La instrucción SELECT es para buscar información.
SELECT campos FROM tablas WHERE (condicion1 [AND/OR] condicion2 [AND/OR]...) [ORDER BY orden [ASC/DESC] ] ;
En la consulta:
campos
puede ser una lista de uno o más campos, conteos o fórmulas. Asterisco (“*
”) se usa para indicar mostrar todos los campos de una tabla.tablas
puede ser una lista de una o más tablas o uniones de tablas (JOIN, UNION, etc), con o sin su fuente de base de datos (por ejemplo,crux.mae_usuarios
o simplementemae_usuarios
).condicion1, condicion2
es una lista opcional de condiciones en el lenguaje lógico de SQL. Una condición puede ser comparar el valor de un campo, por ejemplo “WHERE mae_nombre_empresa LIKE '%Lily%'
”.orden
es una lista de campos o de fórmulas, del más prioritario al menos prioritario, para ordenar los resultados. Por ejemplo “ORDER BY cantidad_vendida, WEEKDAY(fecha_venta)
” ordenaría una lista de ventas de la que vendió más a menos y luego por el día de semana de la venta.
Agregar Datos
Las instrucciones INSERT y UPDATE agregan información.
INSERT INTO tablas VALUES (fila1),(fila2), ... ; UPDATE tablas SET cambios... WHERE (condicion1 [AND/OR] condicion2 [AND/OR]...) ;
Eliminar Datos
La instrucción DELETE permite eliminar registros (filas) de una tabla en la base de datos.
DELETE FROM tablas WHERE condiciones... ;
Software
Los siguientes son ejemplos de software que se están usando en Helpcom.
Motores
- MySQL Server Community - https://dev.mysql.com/downloads/mysql/ . Usado por productos como Crux.
- PostgreSQL Server - http://postgresql.org/ . Usado por productos como Orión.
- SQLite - https://www.sqlite.org/ - usado por productos como Draco.
- MongoDB
- VoltDB
Gestores
- DBeaver Community - https://dbeaver.io/download/ .
DBeaver es un GUI (interface gráfica) para la gestión de base de datos en varios motores. Es abierto y multiplataforma basado en Java FX y está disponible en los recursos compartidos de Helpcom. Ofrecen descargas tanto para Linux como Windows.
Para la instalación ver Dbeaver.
- MySQL Query Browser
- MySQL Workbench
Query Browser es un GUI (interface gráfica) para la consulta de base de datos MySQL Server 4.1 a 5.5. MySQL Workbench es el sucesor de Query Browser y soporta modelos de bases de datos de MySQL 5.1 a 8.x, y está disponible en Linux en el gestor de paquetes con un nombre como mysql-tools-workbench
o similar.
Para la instalación ver Query Browser.
mysql
mysql
es la línea de comandos de MySQL. Viene como opción en MySQL Community Server en Windows y en Linux viene disponible como un paquete con un nombre como mysql-client
o similar.
psql
psql
es la línea de comandos de PostgreSQL. En Linux viene disponible como un paquete con un nombre como postgresql-client
o similar.
- SQLitebrowser
SQLitebrowser es una interface gráfica para crear, gestionar y respaldar archivos de base de datos en SQLite2 (no en SQLite3). En Linux está disponible con el nombre de paquete sqlitebrowser
o similar.
Más Información
Páginas que pueden tener información relacionada:
2018/10/04 17:09 | Luis Machuca Bezzaza | |
2018/10/04 23:17 | Luis Machuca Bezzaza | |
2018/10/03 14:03 | Luis Machuca Bezzaza |
2017/10/13 14:15 | Luis Machuca Bezzaza | |
2022/04/01 14:22 | Luis Machuca Bezzaza | |
2018/05/07 15:10 | Luis Machuca Bezzaza | |
2017/10/05 16:13 | Luis Machuca Bezzaza | |
2018/08/13 14:59 | Luis Machuca Bezzaza | |
2017/12/27 13:59 | Luis Machuca Bezzaza | |
2018/10/03 14:03 | Luis Machuca Bezzaza | |
2018/08/13 18:24 | Luis Machuca Bezzaza |
2018/10/04 23:17 | Luis Machuca Bezzaza |