3tablas Workbench

download 3tablas Workbench

of 16

Transcript of 3tablas Workbench

  • 8/16/2019 3tablas Workbench

    1/16

    Creadas las tres tablas, debemos relacionar, en este caso la tabla inscripción con lasotras 2 tablas,

    Hacemos clic en LA TABLA INSCRIPCION y en la barra inerior la opción !OR"#"IN $"%S

    &clic'( y

    Hacemos lo si)*iente+

  • 8/16/2019 3tablas Workbench

    2/16

    NOS A-OS A #.AR/AR, "0PORT, !OR1AR/ "N#IN""R SL CR"AT SCRIPT 3

  • 8/16/2019 3tablas Workbench

    3/16

    CLIC$ "N N"0T

  • 8/16/2019 3tablas Workbench

    4/16

    -ARCAR LAPRI-"RA OPCION % CLIC$ "N N"0T

    CO-O P."/""R A.TO-ATICA-"NT" S" HA #"N"RA/O "LSL SCRIPT &O CO/I#O( PARA #"N"RAR LABAS" /" /ATOS, LAS TR"S TABLAS

  • 8/16/2019 3tablas Workbench

    5/16

    -yS4l 1or'Benc5 b6sico+

    Para asignar una variable simplemente utilizamos la palabra reservada SET (o clausula SET), seguida por el

    signo de arroba y el nombre de la variable, posteriormente el signo de igual (que en este caso sería el signo

    de asignación) y el valor de la variable, de la siguiente forma

    SET @nombre = ‘Tomas’;

    !o que "emos "ec"o en este breve e#emplo es asignar a la variable nombre el valor de la cadena de

    caracteres $Tomas%&

    [if no exist] --> si existe la tabla no se crea una nueva.

    null --> admite valores nulos

    no null --> rechaza dejar el campo en blanco

  • 8/16/2019 3tablas Workbench

    6/16

    default --> permite establecer un valor por defecto

    Columnas numéricas:

    auto_increment --> para generar identificadores únicos o valores en serie.

    unisgned --> rechazo de valores negativos

    Cadena:

    binary --> trata los valores como cadenas binarias (campos char y varchar)

    Cláusulas:

    primary key --> columna indexada para búsqueda rápida. Clave principal, solo puede

    haber una

    unique --> crea un índice con valores únicos

    index, key --> son sinónimos y crean índices que pueden contener valores repetidos.

    DROP [column] nombre _ columna: elimina la columna especificada.

    DROP INDEX nombre_index: elimina el índice de la tabla.

    DROP PRIMARY KEY: elimina la clave principal de la tabla. Si no existe clave principal y si

    índices con especificación UNIQUE se elimina el primero existente.

  • 8/16/2019 3tablas Workbench

    7/16

    CO/I#O+

    S"T 7OL/8.NI."8CH"C$S977.NI."8CH"C$S, .NI."8CH"C$S9:;

    S"T 7OL/8!OR"I#N8$"%8CH"C$S977!OR"I#N8$"%8CH"C$S,

    !OR"I#N8$"%8CH"C$S9:;

    S"T 7OL/8SL8-O/"977SL8-O/", SL8-O/"9

  • 8/16/2019 3tablas Workbench

    8/16

    6estricciones 12/1E

    !as restricciones son reglas que 'otor de base de datos de S! Server aplica de forma

    automtica& Por e#emplo, puede usar restricciones 12/1E para garantizar que no se escriben

    valores duplicados en columnas específicas que no forman parte de una clave principal& Tanto

    la restricción 12/1E como la restricción P6/'*67 4E7 e5igen la unicidad8 sin embargo,

    debe usar la restricción 12/1E y no P6/'*67 4E7 si desea e5igir la unicidad de unacolumna o una combinación de columnas que no forman la clave principal&

    6estricciones .3E.4

    !as restricciones .3E.4 e5igen la integridad del dominio mediante la limitación de los valores

    que puede aceptar una o varias columnas& Puede crear una restricción .3E.4 con cualquier 

    e5presión lógica (booleana) que devuelva T61E (verdadero) o 9*!SE (falso) basndose enoperadores lógicos& Por e#emplo, es posible limitar el intervalo de valores para una

    columna salary creando una restricción .3E.4 que solo permita datos entre :; --- y :-- ---

    1S0& Esto evita que los salarios caigan fuera del intervalo de salario normal& !a e5presión

    lógica sería la siguiente salary = :-----&

    •   SET @OLD_FOREIN_KE!_CHECKS=@@FOREIN_KE!_CHECKS,

    FOREIN_KE!_CHECKS=0;: Determines whether the server should check that a

    referenced table exists when defining a foreign key. Due to potential circular references, this

    check must be turned off for the duration of the import, to permit defining foreign keys. For

    additional information, see"#$ei%n_ke&_checks.

    9?6E/@2A4E7A.3E.4S option specifies B"et"er or not to c"ecC foreign Cey constraints for /nno0+

    tables&

    Quick Example

      DD Specify to c"ecC foreign Cey constraints (t"is is t"e default)

      SET 9?6E/@2A4E7A.3E.4S = :8

     

    DD 0o not c"ecC foreign Cey constraints

      SET 9?6E/@2A4E7A.3E.4S = -8

    http://void%280%29/http://void%280%29/http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_foreign_key_checkshttp://void%280%29/http://void%280%29/http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_foreign_key_checks

  • 8/16/2019 3tablas Workbench

    9/16

    !"er"ie#

    'yS! 9?6E/@2A4E7A.3E.4S option

    Syn$ax SET 9?6E/@2A4E7A.3E.4S = - :

    De%aul$ : 9oreign Ceys are c"ecCed

    &'en Se$ $o ( E5isting data are not  reDvalidated

    )e$ $'e *urren$ +alue SE!E.T FF9?6E/@2A4E7A.3E.4S

    •   SET @OLD_SQL_'ODE=@@SQL_'ODE, SQL_'ODE=(TR)DITION)L(;:

    Sets SQL_MODE toTR)DITION)L, causing the server to operate in a more restrictive

    mode, and)LLO*_IN+)LID_D)TES, causing dates to not be fully validated.

    Full List of SQL Modes

    The following list describes all supported SQL modes:

    •   ALLOW_INVALID_DATES

    Do not perform full checking of dates. Check only that the month is in the range from 1 to 12 and the

    day is in the range from 1 to 31. This is very convenient for Web applications where you obtain year,

    month, and day in three different fields and you want to store exactly what the user inserted (without

    date validation). This mode applies toDATE and DATETIME columns. It does not

    applyTIMESTAMP columns, which always require a valid date.

    The server requires that month and day values be legal, and not merely in the range 1 to 12 and 1 to

    31, respectively. With strict mode disabled, invalid dates such as'2004-04-31' are converted

    to'0000-00-00' and a warning is generated. With strict mode enabled, invalid dates generate an

    error. To permit such dates, enable ALLOW_INVALID_DATES.

    http://dev.mysql.com/doc/refman/5.6/en/sql-mode.htmlhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.htmlhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_traditionalhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.htmlhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_traditionalhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dateshttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/datetime.htmlhttp://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sqlmode_allow_invalid_dates

  • 8/16/2019 3tablas Workbench

    10/16

    SQL básico

    Pregunta 1:

    ¿Qué instrucción se emplea para eliminar todo el contenido de una

    tabla, pero conservando la tabla?

     a) DELEE !"LE

    b) D#$P !"LE

    c) #%&'!E !"LE

    d) Las anteriores respuestas no son correctas

    Pregunta (:

    En QL, ¿cu*l de estas sentencias a+ade una ila a una tabla en una

    base de datos?

  • 8/16/2019 3tablas Workbench

    11/16

     a) !DD

    b) -&E#

    c) %PD!E

    d) -&'L%DE

    Pregunta .:

    En una cl*usula L-/E, ¿cómo se obtienen todos los nombres de

    personas 0ue comienan con 23uan2?

     a) L-/E 23uan42

    b) L-/E 23uan52

    c) L-/E 23uan62

    d) L-/E 23uan72

    Pregunta 8:

    ¿En cu*l de las siguientes sentencias del lengua9e QL se emplea la

    cl*usula E?

  • 8/16/2019 3tablas Workbench

    12/16

     a) DELEE

    b) D#$P

    c) ELE'

    d) %PD!E

    Pregunta :

    En QL, para modiicar la estructura de una tabla de una base de

    datos se emplea la instrucción

     a) !LE# !"LE

    b) ';!&

  • 8/16/2019 3tablas Workbench

    13/16

     a) L-/E 2????2

    b) L-/E 2BBBB2

    c) L-/E 2CCCC2

    d) Las anteriores respuestas no son correctas

    Pregunta :

    ¿'u*l de las siguientes no es una unción de agregación?

     a) '$%&)

    b) L-=-)

    c) =!F)

    d) =-&)

    Pregunta G:

    En QL, para eliminar las ilas duplicadas del resultado de una

    sentencia ELE' se emplea

     a) &$ D%PL-'!E

  • 8/16/2019 3tablas Workbench

    14/16

     b) %&-Q%E

    c) D--&'

    d) Las anteriores respuestas no son correctas

    Pregunta H:

    En QL, para ordenar los datos devueltos por una sentencia ELE'

    se emplea la cl*usula

     a) $#DE# "

    b) $#DE#ED "

    c) $# "

    d) $#ED "

    Pregunta 1I:

    ¿'u*l de las siguientes no es una unción de agregación?

     a) !JL$$#)

  • 8/16/2019 3tablas Workbench

    15/16

     c) %=)

    d) Las anteriores respuestas no son correctas

    Pregunta 11:

    %na sentencia ELE' sin la cl*usula K;E#E devuelve

     a) odos los registros eAistentes en la tabla 0ue no estén

    relacionados con otra tabla

    b) odos los registros eAistentes en la tabla

    c) &o se puede e9ecutar una sentencia ELE' sin la cl*usula

    K;E#E

    d) Las anteriores respuestas no son correctas

    Pregunta 1(:

    ¿'ómo se borra toda una base de datos con QL?

     a) DELEE D!!"!E

    b) D#$P D!!"!E

    c) E#!E D!!"!E

  • 8/16/2019 3tablas Workbench

    16/16

     d) Las anteriores respuestas no son correctas