[MYSQL]Tablas: filas y columnas - Comandos Básicos - Tipos de Datos - Clave Primaria



TABLAS:
Las BD se organizan en tablas, tal como lo es primitivamente las hojas de calculos de EXEL




Esta compuesta de:
COLUMNAS:
  • de forma vertical son los campos, donde insertaremos un registro
  • estos campos corresponden a un tipo de dato (numerico, alfanumerico, etc)
  • cada columna debe tener un unico nombre en su tabla
  • generalmente se utiliza una columna "codigo" con un numero que identifica la fila.
FILAS:
  • de manera horizontal son los registros que iremos insertando
  • cada registro se corresponde con el tipo de dato del campo al que pertenecerá
 COMANDOS BÁSICOS DE MYSQL

  1. -- ----------------------------
  2. -- SQL: Structured Query Language
  3. -- (Lenguaje de Consulta Estructurado)
  4. -- ----------------------------
  5. -- comentarios lineales
  6. -- son 2 guiones medios y es necesario un espacio
  7. #  el numeral, gato, etc (#) tambien hace comentarios
  8. -- ----------------------------
  9. -- COMANDOS BÁSICOS
  10. -- ----------------------------
  11. -- el punto y coma (;) es el terminador de instrucciones
  12. -- para ejecutar una sentencias, hay que pararse sobre la linear
  13. -- y pulsar alt + Enter
  14. show databases; -- muestra las bases de datos del sistema
  15. SHOW DATABASES; -- PUEDO ESCRIBIR LAS INSTRUCCIONES EN MAYUSCULAS O MINUSCULAS NO ES CASE SENSITIVE
  16. create database dar10mysql; -- con este comando creo una base de datos
  17. -- los objetos creados en windows no diferecian mayuscula de minusculas
  18. -- pero los objetos creados en linux o unix son case sensitive,
  19. -- es decir
  20. -- create database ADMINISTRACION;
  21. -- create database administracion;
  22. -- bajo windows estamos creando la misma base de datos
  23. -- pero en linux seria 2 bases distintas
  24. use dar10mysql; -- con el comando use entramos a una BD
  25. show tables; -- muestra las tablas de la BD
  26. -- -----------------------------
  27. -- Como crear una tabla en MySQL
  28. -- -----------------------------
  29. create table clientes ( -- creamos la tabla clientes
  30. nombre varchar(20) not null,
  31. apellido varchar(20) not null,
  32. cuit varchar(13),
  33. direccion varchar(50),
  34. comentarios varchar(140),
  35. primary key (codigo)
  36. );
  37. -- esta instrucción tiene varias lineas pero sabemos que termina el la linea que tiene el ;
  38. -- primary key() declara que un campo es clave primaria
  39. -- el campo clave primaria identifica el registro y no puede tener valores repetitivos
  40. -- La clausula auto_increment permite que el contenido de dicho campo sea ingresado automaticamente
  41. -- en forma autonumerada, esta clausula solo es aplicable a la primary key
  42. -- la clausula not null, indica que ese campo es de ingreso obligatorio y no puede ser omitido.
  43. show tables; -- comprobamos la existencia de la tabla
  44. describe clientes; -- muestra la descripción de campos de la tabla
  45. select * from clientes; -- muestra los registro de la tabla
  46. drop table clientes; -- borramos la tabla clientes
  47. drop table if exists clientes; -- borramos la tabla clientes si existe
  48. -- borrar un objeto inexistente causa un error de ejecución por lo tanto agregamos la clausula if exists
  49. create table if not exists clientes ( -- creamos una tabla con la clausula if not exists
  50. nombre varchar(20) not null,
  51. apellido varchar(20) not null,
  52. cuit varchar(13),
  53. direccion varchar(50),
  54. comentarios varchar(140),
  55. primary key (codigo)
  56. ); -- en caso de no existir crea la tabla sino omite la creacion
  57. show tables; -- volvemos a comprobar las tablas existentes
  58. -- -------------------------------
  59. -- ingresar registros en una tabla
  60. -- -------------------------------
  61. -- igresamos 5 registros en tabla clientes
  62. insert into clientes (nombre,apellido,cuit,direccion) values ('juan','perez','xxxxx','peru 323');
  63. insert into clientes (nombre,apellido,cuit,direccion) values ('diego','torres','xxxxx','chile 320');
  64. insert into clientes (nombre,apellido,cuit,direccion) values ('laura','gomez','xxxxx','san juan 420');
  65. insert into clientes (nombre,apellido,cuit,direccion) values ('mario','lopez','xxxxx','lavalle 770');
  66. insert into clientes (nombre,apellido,cuit,direccion) values ('dario','sanchez','xxxxx','mexico 150');
  67. -- son 5 instrucciones que deben ejecutarse cada una o todas juntas con los iconos de rayo en la parte superior
  68. select * from clientes; -- verificamos el ingreso de los registros

TIPOS DE DATOS EN MYSQL

  1. -- -----------------------------------
  2. -- Tipos de datos mas comunes en MySQL
  3. -- -----------------------------------
  4. -- Tipo de datos Textos dedatos mas comunes
  5. -- Tipo     Bytes de almacenamiento
  6. -- _______________________________________
  7. -- char(x)      x
  8. -- varchar(x)   x+1
  9. -- Tipo de datos Numérico
  10. -- Tipo     Bytes de almacenamiento
  11. -- _______________________________________
  12. -- tinyint      1   2^8     256
  13. -- smallint     2   2^16    65536
  14. -- mediumint    3   2^24    16777216
  15. -- int          4   2^64    4294967296
  16. -- bigint       8   2^128   18446744073709551616
  17. -- float        4           -3.4e+38 a –1.1e-38 (9 cifras).
  18. -- double       8
  19. -- decimal(t,d) t+2
  20. -- Tipo de datos Fecha y Hora
  21. -- Tipo     Bytes de almacenamiento
  22. -- _______________________________________
  23. -- date     3   Año Mes Dia ‘2012-10-25’       
  24. -- datetime 8
  25. -- time     3
  26. -- year     1
  27. select curdate(); -- devuelve la fecha actual
  28. select curtime(); -- devuelve la hora actual
  29. -- Campos numéricos UNSIGNED no permite el ingreso de numeros negativos
  30. -- Amplia el rango positivo del campo
  31. create table libros(
  32.   titulo varchar(20) not null,
  33.   autor varchar(30),
  34.   editorial varchar(15),
  35.   precio float unsigned,
  36.   cantidad integer unsigned,
  37.   primary key (codigo)
  38. );
  39. describe libros;
  40. -- Atributo ZEROFILL completa con ceros
  41. create table libros2(
  42.   codigo int(6) zerofill auto_increment,
  43.   titulo varchar(40) not null,
  44.   autor varchar(30) default 'desconocido',
  45.   editorial varchar(15),
  46.   precio decimal(5,2) unsigned,
  47.   cantidad smallint zerofill,
  48.   primary key (codigo)
  49. );

LA CLAVE PRIMARIA (PK: PRIMARY KEY)

Una tabla suele tener una o varias columnas que identifiquen de forma unica cada registro, como el campo "código" que identifica a cada cliente con un numero unico, generalmente es autoincremental, aunque no es el unico caso, tambien se pueden combinar con letras, pero ninguna combinacion ha de repetirse.

Las PK no acepta valores nulos (null) ya que garantizan datos de registros unicos, se las llaman columnas entidad

Se declaran al crear o modificar la tabla.

[MYSQL] Qué es una bases de datos?

Una Base de Datos es un conjunto de datos informativos organizados en un mismo contexto para su posterior uso y vinculación.

Siguiendo esta idea, una biblioteca es una Base de Datos, muchos libros impresos en papel (Conjunto de datos) están ordenados por categorias (organiados en un mismo contexto) en diferentes estanterias, para que la gente pueda ubicarlos y leerlos o acceder similares (posterior uso y vinculacion)



Actualmente, la mayor cantidad de datos están en formato digital y ofrece multiples opciones para almacenarlos y ventajas para su consulta, hablamos de base de datos digitales.

MOTORES DE BASE DE DATOS:
Sirven para definir, construir y manipular las BD (Base de Datos).
Definir: tipo de datos, estructuras y restricciones para los datos que se almacenarán.
Construir: proceso para almacenar los datos
Manipular: consultas, insercciones, relaciones entre los datos.


PARTES DE UNA BASE DE DATOS:
Datos: minima unidad de información, sin sentido en si misma como lo puede ser un nombre propio, pero en conjunto con otras adquiere significado, como una agenda de contactos.
Motor de Base de Datos: es el sotfware que maneja los datos, los mas populares son ORACLE database, MYSQL, Microsoft SQL Server, SQLite, PostgreSQL, entre otros.
Aplicaciones: son quienes acceden al motor de base de datos para presentar la informacion al usuario.
Usuario: quien accede a la base de datos.

COMO PREPARARSE PARA PROGRAMAR EN MYSQL
Que sera nuestro editor donde escribiremos nuestras sentencias para el uso y manejo de nuestras bases de datos.

  • Adicionalmente necesitaremos descargar nuestros servidores, las opciones favoritas de los usuarios esta entre WAMP ó XAMPP (buscar en google)


Una vez descargado e instalado todo... en mi caso utilizare el xampp, lo abrimos y ejecutamos los servidores apache y mysql desde el boton "start", en la parte inferior deberiamos ver que todo se ejecuto correctamente.




Posteriormente abrimos el MySQL Workbench, y en la pagina de inicio simplemente hay que darle un nombre de conexion




Y estamos listos para trabajar con archivos .sql ó hacer nuestros propios script sql desde File>>New Query tab. Por el momento vamos a quitarle los laterales que se marcan en la esquina superior derecha.




Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
Una base de datos es el conjunto de datos informativos organizados en un mismo contexto para su uso y vinculación.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php

Tips: atajos de teclado y plantilla de código de NetBeans

Los atajos de teclados nos permiten ganar tiempo al dejar que el IDE haga todo el trabajo por nosotros, al comenzar los primeros pasos, no es recomendable usarlos por practica y porque no se le llega a dar el ahorro de tiempo considerable.
Las pantillas de códigos nos permiten autocompletar una linea o método presionando "CTRL+ESPACIO" y dejar que el IDE nos muestre las sugerencias que tiene para ofrecernos y luego aceptamos presionando "ENTER".


Atajos

Ctrl+ X, Ctrl + C, Ctrl + v

Unos atajos muy conocidos y que funcionan en casi todo programa, CORTAR, COPIAR y PEGAR

Alt + Insert

Nos permite generar los métodos mas necesarios para nuestra clase:

Ctrl + Shift + I

Agrega la declaración de importación necesaria.

Ctrl + R

Renombramos. Al hacer doble click sobre un atributo o método lo seleccionamos, y al pulsar ctrl+R aparecerá un recuadro sobre nuestra palabra indicando que ahora es editable, simplemente comenzamos deletreando el nuevo nombre y veremos como cambia el nombre en todos los lugares en que este, si los hubiera dentro del proyecto. Finalizamos con enter.

Alt + Shift + M

Introducimos las lineas de códigos seleccionadas en un método:

Alt + Shift + F

Formatea las linea de código para que sean visualmente leibles.

Shift + F6

Ejecuta el proyecto principal.

Ctrl + F8

Agrega un BreakPoint en la linea en que nos encontremos.

Ctrl + Shift + F5

Ejecuta el modo Debugg del proyecto principal. Previamente hay que realizar BreakPoints sino seá muy parecido a "run"

Ctrl + Click izquierdo

Al mantener pulsado el Ctrl aparecerán como hypervinculo las clases, interfaces, objetos, métodos, atributos para redireccionarnos a la clase que pertenecen.


Ctrl + Espacio : Plantillas

psvm

public static void main(String[] args) {
}

sout

System.out.println("");

St

String

fori

for (int i = 0; i < arr.length; i++) {
Object arr = arr[i];
}

ifelse

if (true) {
} else {
}

trycatch

try {
} catch (Exception e) {
}

pu

public

pr

private

ir

import

ex

extends

re

retun

th

throws

tw

throw

st

static

su

super

fi

final

ab

abstract

Tips: GUI Building en NetBeans

En NetBeans y unicamente en netbeans, tenemos la posibilidad de construir nuestras ventanas con editor gráfico arrastrando y soltando, contenedores y componentes sobre un JFrame.

Para lo cual, unicamente, al crear nuestra clase java deberemos elegir el tipo JFrame Form en la categoria Swing GUI Form

Luego de elegir la clase del tipo JFrameForm, habra que darle el nombre a la clase y ubicarlo en el package correspondiente. Al crearse podremos reconocer 5 ubicaciones utiles:

  • Vista Fuente
    • Podremos ver siempre nuestro codigo en lineas java, esto es generado automaticamente por el IDE. Solo podremos modificar las lineas blancas, ya que las grises forman parte de la ventana automatica y al cambiar valores puede que termine no funcionando.
  • Vista Diseño
    • La vista, que por defecto se inicia, en la cual podremos "Diseñar" arrastrando y soltando los contenedores y componentes de la paleta
  • Vista Previa
    • Nos muestra como quedaria la ventana al ejecutarse. Aparenciendo la barra de titulo y botones. Es solo para el diseño, ya que no funcionan eventos de usuarios.
  • Pallete
    • El el listado de componentes y contenedores que podremos arastrar a nuestra ventana
  • Properties
    • La propiedades del componente o contenedor seleccionado para modificar. Al no tener nada selecionado por defecto nos da la propiedades del JFrame.


En cuestion de unos minutos, pude recrear, mas o menos, la calculadora de windows, solo en el diseño ya que no responde al pulsar algo

    Fue muy útil el editor
  • al crear tantos botones simplemente arrastrando.
  • al cambiarle el texto al boton, desde la propiedades.
  • al cambiarle el color, en foreground(color).
  • al cambiarle el tamaño de cada boton. en minimunSize/maximunSize
  • al cambiarle el margin (margin de los 4 lados sobretodo el de "+/-").

Quedara agregarles un listener para que respondan a los eventos de usuarios, pulsado sobre cada boton el boton derecho y se desplegara un menu en cual podremos asignarles un evento, y nos cambiara a la vista fuente para escribir el codigo que queremos que haga el o los metodos de cada Listener.
NOTA: al cambiar a la vista fuente, el editor me creo mas de 350 lineas de codigo para esta ventana, la cual es un poco engorrasa pero nada del otro mundo, sera cuestion de acostumbrarse a la forma donde simplemente se pone los eventos de ususario.