SlideShare una empresa de Scribd logo
1 de 6
BASE DE DATOS
Primary key, not null, auto increment, binary, unsigned, unique
7 DE OCTUBRE DE 2015
CBTIS 125
Claudia Astrid Olvera Doria
Profe:SergioIvánPérezSiller.
Grupo: 3B Programación
Primary key
En el diseñode bases de datosrelacionales,se llamaclave primariaauncampo o a una
combinaciónde camposque identificade formaúnicaa cada filade una tabla.Una clave primaria
comprende de estamaneraunacolumnao conjuntode columnas.Nopuede haberdosfilasen
una tablaque tenganla mismaclave primaria.
Una clave primariadebe identificaratodaslas posiblesfilasde unatablayno únicamente alas
filasque se encuentranenunmomentodeterminado.Ejemplosde clavesprimariassonDNI
(asociadoa unapersona) o ISBN (asociadoaun libro).Lasguías telefónicasydiccionariosno
puedenusarnombresopalabraso númerosdel sistemadecimalde Deweycomoclaves
candidatas,porque noidentificanunívocamente númerosde teléfonoopalabras.
El modelorelacional,segúnse loexpresamediante cálculorelacional yálgebrarelacional,no
distingue entre clave primariayotrostiposde claves.Las clavesprimariasfueronagregadasal
estándarSQL principalmente paraconvenienciadel programador.Enunaarquitecturaentidad-
relación,laclave primariapermite lasrelacionesde latablaque tiene laclave primariaconotras
tablasque van a utilizarlainformaciónde estatabla.
Tanto clavesúnicascomoclavesprimariaspuedenreferenciarseconclavesforáneas.
ALTER TABLE <identificador_de_la_tabla>
ADD [ CONSTRAINT<identificador_de_la_directiva>]
PRIMARY KEY ( <nombre_de_columna>{,<nombre_de_columna>}...)
La clave primariapuede especificarsedirectamenteode formainmediataenel momentode la
creaciónde la tablatambién.Enel estándarSQL, lasclavesprimariaspuedenestarcompuestas
por una o más columnas.Cadacolumnaque forme parte de la clave primariaqueda
implícitamentedefinidacomoNOTNULL. Nótese que algunossistemasde bases de datos
requierenque se marque explícitamentealascolumnasde clave primariacomoNOT NULL.
CREATE TABLE nombre_de_la_tabla(
id_col INT,
col2 CHARACTERVARYING(20),
...
CONSTRAINTclapri_tablaPRIMARYKEY(id_col),
...
)
En el caso en que laclave primariaseauna solacolumna,éstapuede marcarse comotal por medio
de la siguiente sintaxis:
CREATE TABLE nombre_de_la_tabla(
id_col INT PRIMARY KEY,
col2 CHARACTERVARYING(20),
...
).
Not Null
NOT NULL: indicaque el campo obligatoriamentenopuede estarvacio.
NULL: indicaque el campo puede ono estarvacio,no esobligacionde que contengaalguntipode
Dato.
La segundacolumna"Null"especificasi el campopermite valoresnulos;vemosque enel campo
"codigo",aparece "NO"y enlasdemás"YES", estosignificaque el primercamponoaceptavalores
nulos(porque esclave primaria) ylosotrossi lospermiten.
Auto Increment
La clausulaAUTO_INCREMENTde MySQL le asigna unacaracterística secuencial aun atributode
una tabla.Esto quiere decirque se llevaráunordenincremental enel atributocadavezque se
agregue unanuevafila.Un ejemplode secuenciasería:1, 2 , 3 ,…
Sintaxis
CREATE TABLE Nombre(
Atributo<TipoDato>[Restricciones] [AUTO_INCREMENT]
.
.
.
)
Ejemplo
Vamosa crear una tablallamadaPROFESORcuyoscampos son:id,Nombre,ApellidoyEdad.El
atributoidserá lallave primariade latabla,ademasesde tiponuméricoycada vezque se inserte
una nuevafiladebe aumentarenunaunidaddesde 1hastan.
CREATE TABLE PROFESOR(
ID INT NOT NULL AUTO_INCREMENTPRIMARY KEY,
NOMBRE VARCHAR(100) NOTNULL,
APELLIDO VARCHAR(100) NOT NULL,
EDAD INT NOTNULL
);
Ahorainsertemos3registrospara observarel funcionamientode lasecuencia:
INSERT INTOPROFESOR(ID,NOMBRE,APELLIDO,EDAD)VALUES
(NULL,’Ramiro’,’Lopez’,26),
(NULL,’Selma’,’Martinez’,22),
(NULL,’Helman’,’Vidriero’,31);
Binary
Uno de los parámetros que están activados por defecto es el binary log de
MySQL. Resulta curioso como se suele dejar activado, ya que afecta
considerablemente al rendimiento y requiere de un cierto mantenimiento.
Para activar o desactivar el binary log es el parámetro log-bin:
log-bin=mysql-bin
Mediante FLUSH BINARY LOGS deberemos limpiar del binary log lo que ya no
sea necesario, lo veremos próximamente.
En el binary log se escriben las sentencias que potencialmente hayan podido
modificar algún dato. Por ejemplo, si ejecutamos un UPDATE aunque la condición
del WHERE no coincida con ninguna fila esta va a parar al binary log.
En la versión 5.1 de MySQL se introdujo el concepto de “row based replication“:
esto significa que se puede configurar el formato del log según nos interese. Los
formatos, a especificar mediante el parámetro binlog-format, son:
Basado en sentencias (statement-based):
binlog-format=STATEMENT
Se trata del tipo que se usaba (porque era el único tipo) antes de la versión 5.1
Basado en filas (row-based):
binlog-format=ROW
En este caso en lugar de almacenar las sentencias que se han ejecutado,
almacena las filas modificadas
Mezcla de los dos anteriores:
binlog-format=MIXED
Usa por defecto statement-based, pero puede usar row-based según crea el
MySQL
Como todo, cada opción tiene sus ventajas e inconvenientes si se usa para la
replicación:
En el caso de statement-based, si una query tarda mucho en ejecutar pero
modifica pocas filas, el slave se va a retrasar el doble del tiempo de ejecución de
la query: Primero estará el tiempo que tarde esperado que le lleguen datos cuando
el master la este ejecutando más (suponiendo igual hardware) va a tardar lo
mismo que el master en ejecutar la query. En el caso de usar row-based, el slave
se retrasaría igual mientras se ejecuta la query en el master, pero si son pocas las
filas replicadas podría salir más a cuenta enviar los datos que esperar que se
vuelva a ejecutar la query.
Por el contrario, si una query muy simple modifica muchos datos en el caso de
Binary logs de MySQL sólo se va a mandar la query, mientras que en row-based
se van a mandar muchos datos.
Unsigned
Unsigned significa `sin signo'... es como la diferencia que hay entre los números
naturales (0...) o los números enteros (...-1,0,1,...)
Una variable que declares unsigned siempre empleará valores enteros positivos,
nunca negativos.
En aquellos programas donde no vas a emplear números negativos, puede ser
preferible emplear una variable unsigned para aprovechar el más amplio rango
que dan estos números al aprovechar el bit que normalmente se emplea como
signo.
Por ejemplo... un dato signed char es un número que va de -128 a +127, mientras
que un unsigned char suele tomar valores entre 0 y 255.
Unique
La cláusula UNIQUE sirve para definir un índice único sobre la columna. Un índice
único es un índice que no permite valores duplicados, es decir que si una columna
tiene definida un restricción de UNIQUE no podrán haber dos filas con el mismo
valor en esa columna. Se suele emplear para que el sistema compruebe el mismo
que no se añaden valores que ya existen, por ejemplo si en una tabla de clientes
queremos asegurarnos que dos clientes no puedan tener el mismo D.N.I. y la tabla
tiene como clave principal un código de cliente, definiremos la columna dni con la
restricción de UNIQUE.

Más contenido relacionado

La actualidad más candente

conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y Nodos
Boris Salleg
 
2,1 elementos de java script
2,1 elementos de java script2,1 elementos de java script
2,1 elementos de java script
Cronio Antmao
 
Seleccion de datos 2
Seleccion de datos 2Seleccion de datos 2
Seleccion de datos 2
Omar Salazar
 
Funciones de sql server
Funciones de sql serverFunciones de sql server
Funciones de sql server
Emily_Fdez
 
81 Php. Creacion De Tablas
81 Php. Creacion De Tablas81 Php. Creacion De Tablas
81 Php. Creacion De Tablas
José M. Padilla
 
Integridad referencial en my sql
Integridad referencial en my sqlIntegridad referencial en my sql
Integridad referencial en my sql
Yusef Yamel
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datos
mariajuly
 

La actualidad más candente (19)

Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracle
 
Ambiente de programación en pascal
Ambiente de programación en pascalAmbiente de programación en pascal
Ambiente de programación en pascal
 
Ambiente
 Ambiente Ambiente
Ambiente
 
Ambiente de programacin en pascal
Ambiente de programacin en pascalAmbiente de programacin en pascal
Ambiente de programacin en pascal
 
conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y Nodos
 
Estructura de Datos - Unidad III Estructuras Lineales
Estructura de Datos - Unidad III Estructuras LinealesEstructura de Datos - Unidad III Estructuras Lineales
Estructura de Datos - Unidad III Estructuras Lineales
 
2,1 elementos de java script
2,1 elementos de java script2,1 elementos de java script
2,1 elementos de java script
 
Seleccion de datos 2
Seleccion de datos 2Seleccion de datos 2
Seleccion de datos 2
 
PL SQL Diplomado Oracle
PL SQL Diplomado OraclePL SQL Diplomado Oracle
PL SQL Diplomado Oracle
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Variables de sistema en oracle forms
Variables de sistema en oracle formsVariables de sistema en oracle forms
Variables de sistema en oracle forms
 
Comandos SQL
Comandos SQLComandos SQL
Comandos SQL
 
Plsql y paquetes
Plsql y paquetesPlsql y paquetes
Plsql y paquetes
 
Apuntadores y listas
Apuntadores y listasApuntadores y listas
Apuntadores y listas
 
Funciones de sql server
Funciones de sql serverFunciones de sql server
Funciones de sql server
 
Funciones
FuncionesFunciones
Funciones
 
81 Php. Creacion De Tablas
81 Php. Creacion De Tablas81 Php. Creacion De Tablas
81 Php. Creacion De Tablas
 
Integridad referencial en my sql
Integridad referencial en my sqlIntegridad referencial en my sql
Integridad referencial en my sql
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datos
 

Destacado

Pemanfaatan lidi sebagai media pembelajaran matematika
Pemanfaatan lidi sebagai media pembelajaran matematikaPemanfaatan lidi sebagai media pembelajaran matematika
Pemanfaatan lidi sebagai media pembelajaran matematika
nenipmt
 
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
SMK PRASASTI KARANG BERAHI JAMBI
 
Keutamaan menuntut ilmu
Keutamaan menuntut ilmuKeutamaan menuntut ilmu
Keutamaan menuntut ilmu
el-hafiy
 

Destacado (20)

Karakter Pemuda Islam
Karakter Pemuda IslamKarakter Pemuda Islam
Karakter Pemuda Islam
 
Pemuda dan Kebangkitan Islam
Pemuda dan Kebangkitan IslamPemuda dan Kebangkitan Islam
Pemuda dan Kebangkitan Islam
 
Islamic Finance 2
Islamic Finance 2Islamic Finance 2
Islamic Finance 2
 
Muhammad and Khadija's Thighs
Muhammad and Khadija's ThighsMuhammad and Khadija's Thighs
Muhammad and Khadija's Thighs
 
How to study
How to studyHow to study
How to study
 
Pemanfaatan lidi sebagai media pembelajaran matematika
Pemanfaatan lidi sebagai media pembelajaran matematikaPemanfaatan lidi sebagai media pembelajaran matematika
Pemanfaatan lidi sebagai media pembelajaran matematika
 
Keutamaan menuntut ilmu
Keutamaan menuntut ilmuKeutamaan menuntut ilmu
Keutamaan menuntut ilmu
 
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
Ontoh pidato bahasa inggris tentang pendidikan dibawah ini bisa dijadikan ref...
 
Newton-Einstein
Newton-EinsteinNewton-Einstein
Newton-Einstein
 
Tholabul ilmi
Tholabul ilmiTholabul ilmi
Tholabul ilmi
 
Pendapat pendapat ulama mengenai wajibnya khilafah
Pendapat pendapat ulama mengenai wajibnya khilafahPendapat pendapat ulama mengenai wajibnya khilafah
Pendapat pendapat ulama mengenai wajibnya khilafah
 
ppt. kemuliaan ilmu
ppt. kemuliaan ilmuppt. kemuliaan ilmu
ppt. kemuliaan ilmu
 
Menuntut ilmu
Menuntut ilmuMenuntut ilmu
Menuntut ilmu
 
Semangat menuntut ilmu
Semangat menuntut ilmuSemangat menuntut ilmu
Semangat menuntut ilmu
 
Bm-jati diri
Bm-jati diriBm-jati diri
Bm-jati diri
 
Hadis tarbawi : Ilmu Pengetahuan dan Keutamaan Orang yang berilmu
Hadis tarbawi : Ilmu Pengetahuan dan Keutamaan Orang yang berilmuHadis tarbawi : Ilmu Pengetahuan dan Keutamaan Orang yang berilmu
Hadis tarbawi : Ilmu Pengetahuan dan Keutamaan Orang yang berilmu
 
Ihsanul amal
Ihsanul amalIhsanul amal
Ihsanul amal
 
Jati Diri Remaja
Jati Diri RemajaJati Diri Remaja
Jati Diri Remaja
 
Keutamaan menuntut ilmu
Keutamaan menuntut ilmuKeutamaan menuntut ilmu
Keutamaan menuntut ilmu
 
Remaja Smart with Islam
Remaja Smart with IslamRemaja Smart with Islam
Remaja Smart with Islam
 

Similar a Base de datos

programacion por capas
programacion por capasprogramacion por capas
programacion por capas
luisitoman
 
Sql dinamico14042011
Sql dinamico14042011Sql dinamico14042011
Sql dinamico14042011
josecuartas
 
Bases de datos my sql 2
Bases de datos my sql 2Bases de datos my sql 2
Bases de datos my sql 2
Carlo Silva
 

Similar a Base de datos (20)

T8 – Bases de Datos en MySQL (1).pptx
T8 – Bases de Datos en MySQL (1).pptxT8 – Bases de Datos en MySQL (1).pptx
T8 – Bases de Datos en MySQL (1).pptx
 
Sql server 2005 (bda)henrry
Sql server 2005 (bda)henrrySql server 2005 (bda)henrry
Sql server 2005 (bda)henrry
 
programacion por capas
programacion por capasprogramacion por capas
programacion por capas
 
Sql dinamico14042011
Sql dinamico14042011Sql dinamico14042011
Sql dinamico14042011
 
SQL avanzado
SQL avanzadoSQL avanzado
SQL avanzado
 
Sql
SqlSql
Sql
 
Manual completo-sql
Manual completo-sqlManual completo-sql
Manual completo-sql
 
Manual completo-sql5
Manual completo-sql5Manual completo-sql5
Manual completo-sql5
 
Manejo De Sentencias De Definicion
Manejo De Sentencias De DefinicionManejo De Sentencias De Definicion
Manejo De Sentencias De Definicion
 
Base de datos - Clase 2
Base de datos - Clase 2Base de datos - Clase 2
Base de datos - Clase 2
 
Bases de datos my sql 2
Bases de datos my sql 2Bases de datos my sql 2
Bases de datos my sql 2
 
my SQL - PRACTICA DE SLIDE
my SQL - PRACTICA DE SLIDE my SQL - PRACTICA DE SLIDE
my SQL - PRACTICA DE SLIDE
 
Medicina - Taller
Medicina - TallerMedicina - Taller
Medicina - Taller
 
Preguntas y respuestas Técnicas de SAP HANA
Preguntas y respuestas Técnicas  de SAP HANAPreguntas y respuestas Técnicas  de SAP HANA
Preguntas y respuestas Técnicas de SAP HANA
 
ManualPracticoSQL.pdf
ManualPracticoSQL.pdfManualPracticoSQL.pdf
ManualPracticoSQL.pdf
 
Modulo sql unidad 1
Modulo sql  unidad 1Modulo sql  unidad 1
Modulo sql unidad 1
 
BASE DE DATOS, TIPOS Y CARACTERÍSTICAS
BASE DE DATOS, TIPOS Y CARACTERÍSTICASBASE DE DATOS, TIPOS Y CARACTERÍSTICAS
BASE DE DATOS, TIPOS Y CARACTERÍSTICAS
 
Manual practico-sql
Manual practico-sqlManual practico-sql
Manual practico-sql
 
Manual practico para sql ingieneria de sistemas
Manual practico para sql ingieneria de sistemas  Manual practico para sql ingieneria de sistemas
Manual practico para sql ingieneria de sistemas
 
Manual practico SQL
Manual practico SQLManual practico SQL
Manual practico SQL
 

Más de Clau Doria

Procedimiento de creacion de archivo php
Procedimiento de creacion de archivo phpProcedimiento de creacion de archivo php
Procedimiento de creacion de archivo php
Clau Doria
 
Procedimiento de creacion de archivo php
Procedimiento de creacion de archivo phpProcedimiento de creacion de archivo php
Procedimiento de creacion de archivo php
Clau Doria
 
Base de datos emilio
Base de datos emilioBase de datos emilio
Base de datos emilio
Clau Doria
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
Clau Doria
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
Clau Doria
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
Clau Doria
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
Clau Doria
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
Clau Doria
 
importancia de la base de datos
importancia de la base de datosimportancia de la base de datos
importancia de la base de datos
Clau Doria
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
Clau Doria
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
Clau Doria
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
Clau Doria
 

Más de Clau Doria (20)

Papa
PapaPapa
Papa
 
Emilio php
Emilio phpEmilio php
Emilio php
 
Siller
SillerSiller
Siller
 
Procedimiento de creacion de archivo php
Procedimiento de creacion de archivo phpProcedimiento de creacion de archivo php
Procedimiento de creacion de archivo php
 
Procedimiento de creacion de archivo php
Procedimiento de creacion de archivo phpProcedimiento de creacion de archivo php
Procedimiento de creacion de archivo php
 
Procedimiento de creacion de archivo php
Procedimiento de creacion de archivo phpProcedimiento de creacion de archivo php
Procedimiento de creacion de archivo php
 
Base de datos emilio
Base de datos emilioBase de datos emilio
Base de datos emilio
 
Comandos basicos para bases de datos
Comandos basicos para bases de datosComandos basicos para bases de datos
Comandos basicos para bases de datos
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
 
Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.Claudia y anet trabajo en equipo.
Claudia y anet trabajo en equipo.
 
diseñaa
diseñaadiseñaa
diseñaa
 
importancia de la base de datos
importancia de la base de datosimportancia de la base de datos
importancia de la base de datos
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
 
Importancia de las bases de datos
Importancia de las bases de datosImportancia de las bases de datos
Importancia de las bases de datos
 
Diseña y administra base de datos avanzada
Diseña y administra base de datos avanzadaDiseña y administra base de datos avanzada
Diseña y administra base de datos avanzada
 
Diseña y administra base de datos avanzada
Diseña y administra base de datos avanzadaDiseña y administra base de datos avanzada
Diseña y administra base de datos avanzada
 

Último

🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
jlorentemartos
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 

Último (20)

Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 

Base de datos

  • 1. BASE DE DATOS Primary key, not null, auto increment, binary, unsigned, unique 7 DE OCTUBRE DE 2015 CBTIS 125 Claudia Astrid Olvera Doria Profe:SergioIvánPérezSiller. Grupo: 3B Programación
  • 2. Primary key En el diseñode bases de datosrelacionales,se llamaclave primariaauncampo o a una combinaciónde camposque identificade formaúnicaa cada filade una tabla.Una clave primaria comprende de estamaneraunacolumnao conjuntode columnas.Nopuede haberdosfilasen una tablaque tenganla mismaclave primaria. Una clave primariadebe identificaratodaslas posiblesfilasde unatablayno únicamente alas filasque se encuentranenunmomentodeterminado.Ejemplosde clavesprimariassonDNI (asociadoa unapersona) o ISBN (asociadoaun libro).Lasguías telefónicasydiccionariosno puedenusarnombresopalabraso númerosdel sistemadecimalde Deweycomoclaves candidatas,porque noidentificanunívocamente númerosde teléfonoopalabras. El modelorelacional,segúnse loexpresamediante cálculorelacional yálgebrarelacional,no distingue entre clave primariayotrostiposde claves.Las clavesprimariasfueronagregadasal estándarSQL principalmente paraconvenienciadel programador.Enunaarquitecturaentidad- relación,laclave primariapermite lasrelacionesde latablaque tiene laclave primariaconotras tablasque van a utilizarlainformaciónde estatabla. Tanto clavesúnicascomoclavesprimariaspuedenreferenciarseconclavesforáneas. ALTER TABLE <identificador_de_la_tabla> ADD [ CONSTRAINT<identificador_de_la_directiva>] PRIMARY KEY ( <nombre_de_columna>{,<nombre_de_columna>}...) La clave primariapuede especificarsedirectamenteode formainmediataenel momentode la creaciónde la tablatambién.Enel estándarSQL, lasclavesprimariaspuedenestarcompuestas por una o más columnas.Cadacolumnaque forme parte de la clave primariaqueda implícitamentedefinidacomoNOTNULL. Nótese que algunossistemasde bases de datos requierenque se marque explícitamentealascolumnasde clave primariacomoNOT NULL. CREATE TABLE nombre_de_la_tabla( id_col INT, col2 CHARACTERVARYING(20), ... CONSTRAINTclapri_tablaPRIMARYKEY(id_col), ...
  • 3. ) En el caso en que laclave primariaseauna solacolumna,éstapuede marcarse comotal por medio de la siguiente sintaxis: CREATE TABLE nombre_de_la_tabla( id_col INT PRIMARY KEY, col2 CHARACTERVARYING(20), ... ). Not Null NOT NULL: indicaque el campo obligatoriamentenopuede estarvacio. NULL: indicaque el campo puede ono estarvacio,no esobligacionde que contengaalguntipode Dato. La segundacolumna"Null"especificasi el campopermite valoresnulos;vemosque enel campo "codigo",aparece "NO"y enlasdemás"YES", estosignificaque el primercamponoaceptavalores nulos(porque esclave primaria) ylosotrossi lospermiten. Auto Increment La clausulaAUTO_INCREMENTde MySQL le asigna unacaracterística secuencial aun atributode una tabla.Esto quiere decirque se llevaráunordenincremental enel atributocadavezque se agregue unanuevafila.Un ejemplode secuenciasería:1, 2 , 3 ,… Sintaxis CREATE TABLE Nombre( Atributo<TipoDato>[Restricciones] [AUTO_INCREMENT] . . .
  • 4. ) Ejemplo Vamosa crear una tablallamadaPROFESORcuyoscampos son:id,Nombre,ApellidoyEdad.El atributoidserá lallave primariade latabla,ademasesde tiponuméricoycada vezque se inserte una nuevafiladebe aumentarenunaunidaddesde 1hastan. CREATE TABLE PROFESOR( ID INT NOT NULL AUTO_INCREMENTPRIMARY KEY, NOMBRE VARCHAR(100) NOTNULL, APELLIDO VARCHAR(100) NOT NULL, EDAD INT NOTNULL ); Ahorainsertemos3registrospara observarel funcionamientode lasecuencia: INSERT INTOPROFESOR(ID,NOMBRE,APELLIDO,EDAD)VALUES (NULL,’Ramiro’,’Lopez’,26), (NULL,’Selma’,’Martinez’,22), (NULL,’Helman’,’Vidriero’,31); Binary Uno de los parámetros que están activados por defecto es el binary log de MySQL. Resulta curioso como se suele dejar activado, ya que afecta considerablemente al rendimiento y requiere de un cierto mantenimiento. Para activar o desactivar el binary log es el parámetro log-bin: log-bin=mysql-bin
  • 5. Mediante FLUSH BINARY LOGS deberemos limpiar del binary log lo que ya no sea necesario, lo veremos próximamente. En el binary log se escriben las sentencias que potencialmente hayan podido modificar algún dato. Por ejemplo, si ejecutamos un UPDATE aunque la condición del WHERE no coincida con ninguna fila esta va a parar al binary log. En la versión 5.1 de MySQL se introdujo el concepto de “row based replication“: esto significa que se puede configurar el formato del log según nos interese. Los formatos, a especificar mediante el parámetro binlog-format, son: Basado en sentencias (statement-based): binlog-format=STATEMENT Se trata del tipo que se usaba (porque era el único tipo) antes de la versión 5.1 Basado en filas (row-based): binlog-format=ROW En este caso en lugar de almacenar las sentencias que se han ejecutado, almacena las filas modificadas Mezcla de los dos anteriores: binlog-format=MIXED Usa por defecto statement-based, pero puede usar row-based según crea el MySQL Como todo, cada opción tiene sus ventajas e inconvenientes si se usa para la replicación: En el caso de statement-based, si una query tarda mucho en ejecutar pero modifica pocas filas, el slave se va a retrasar el doble del tiempo de ejecución de la query: Primero estará el tiempo que tarde esperado que le lleguen datos cuando el master la este ejecutando más (suponiendo igual hardware) va a tardar lo
  • 6. mismo que el master en ejecutar la query. En el caso de usar row-based, el slave se retrasaría igual mientras se ejecuta la query en el master, pero si son pocas las filas replicadas podría salir más a cuenta enviar los datos que esperar que se vuelva a ejecutar la query. Por el contrario, si una query muy simple modifica muchos datos en el caso de Binary logs de MySQL sólo se va a mandar la query, mientras que en row-based se van a mandar muchos datos. Unsigned Unsigned significa `sin signo'... es como la diferencia que hay entre los números naturales (0...) o los números enteros (...-1,0,1,...) Una variable que declares unsigned siempre empleará valores enteros positivos, nunca negativos. En aquellos programas donde no vas a emplear números negativos, puede ser preferible emplear una variable unsigned para aprovechar el más amplio rango que dan estos números al aprovechar el bit que normalmente se emplea como signo. Por ejemplo... un dato signed char es un número que va de -128 a +127, mientras que un unsigned char suele tomar valores entre 0 y 255. Unique La cláusula UNIQUE sirve para definir un índice único sobre la columna. Un índice único es un índice que no permite valores duplicados, es decir que si una columna tiene definida un restricción de UNIQUE no podrán haber dos filas con el mismo valor en esa columna. Se suele emplear para que el sistema compruebe el mismo que no se añaden valores que ya existen, por ejemplo si en una tabla de clientes queremos asegurarnos que dos clientes no puedan tener el mismo D.N.I. y la tabla tiene como clave principal un código de cliente, definiremos la columna dni con la restricción de UNIQUE.