Cuestionario 1 - T3 - Revisión Del Intento

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

Área personal / Mis cursos / [2-2020] INF322-SD / Tema 3 / Cuestionario 1 - T3

Comenzado el Thursday, 11 de February de 2021, 18:21


Estado Finalizado
Finalizado en Thursday, 11 de February de 2021, 18:46
Tiempo 24 minutos 24 segundos
empleado
Calificación 100,00 de 100,00
Pregunta 1  Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 10,00
sobre 10,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 750 bs de la cuenta A y los
abona a la cuenta B.
LET @monto=750

INSERT INTO MovCuentas VALUES(3,'A',GETDATE(),-@monto)


INSERT INTO MovCuentas VALUES(3,'B',GETDATE(),@monto)

Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas.

1. ¿Cual propiedad ACID viola la transaccion T?: Consistencia

2. ¿Cual es el Saldo de la cuenta A?: -450

3. ¿Cual es el Saldo de la cuenta B?: 800


Pregunta 2  Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 15,00
sobre 15,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 50 bs de la cuenta A y los
abona a la cuenta B.
DECLARE @monto DECIMAL
DECLARE @saldo DECIMAL
SET @monto=50
BEGIN TRY
SELECT @saldo=SUM(impt) FROM MovCuentas WHERE ncta='A'
IF @monto>=@saldo
         PRINT 'ROLLBACK TRAN'
ELSE
        BEGIN
            INSERT INTO MovCuentas VALUES(3,'B',GETDATE(),@monto)
            INSERT INTO MovCuentas VALUES(1,'A',GETDATE(),-@monto)
            PRINT 'COMMIT TRAN'
        END
END TRY
BEGIN CATCH
           PRINT 'ROLLBACK TRAN'
END CATCH

 
Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas
preguntas.

1. ¿Cual propiedad ACID viola la transaccion T?: Atomicidad y Consistencia

2. ¿Cual es el Saldo de la cuenta A?: 300

3. ¿Cual es el Saldo de la cuenta B?: 100


Pregunta 3  Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 10,00
sobre 10,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 100bs de la cuenta A y los
abona a la cuenta B.
LET @monto=100

INSERT INTO MovCuentas VALUES(3,'A',GETDATE(),-@monto)


INSERT INTO MovCuentas VALUES(3,'B',GETDATE(),@monto)

Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas.

1. ¿Cual propiedad ACID viola la transaccion T?: Ninguna

2. ¿Cual es el Saldo de la cuenta A?: 200

3. ¿Cual es el Saldo de la cuenta B?: 150


Pregunta 4  Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 15,00
sobre 15,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 50 bs de la cuenta A y los
abona a la cuenta C.
DECLARE @monto DECIMAL

DECLARE @saldo DECIMAL


SET @monto=50

SELECT @saldo=SUM(impt) FROM MovCuentas WHERE ncta='A'


IF  @saldo>=@monto

     BEGIN
          INSERT INTO MovCuentas VALUES(3,'A',GETDATE(),-@monto)

          INSERT INTO MovCuentas VALUES(3,'C',GETDATE(),@monto)


    END

Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas.

1. ¿Cual propiedad ACID viola la transaccion T?: Consistencia y Atomicidad

2. ¿Cual es el Saldo de la cuenta A?: 250

3 ¿Cual es el Saldo de la cuenta B?: 50


3. ¿Cual es el Saldo de la cuenta B?: 50

Pregunta 5 La propiedad de  ... de una Transaccion consiste en asegurar que una operación no puede afectar a otras
Finalizado

Puntúa 10,00
Respuesta: AISLAMIENTO
sobre 10,00
Pregunta 6   Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 15,00
sobre 15,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 50 bs de la cuenta A y los
abona a la cuenta B.
DECLARE @monto DECIMAL

DECLARE @saldo DECIMAL


SET @monto=50

BEGIN TRY
     BEGIN TRAN

            SELECT @saldo=SUM(impt) FROM MovCuentas WHERE ncta='A'


            IF  @saldo>=@monto

                  BEGIN


                        INSERT INTO MovCuentas VALUES(3,'A',GETDATE(),-@monto)

                        INSERT INTO MovCuentas VALUES(3,'B',GETDATE(),@monto)


                        ROLLBACK TRAN

                END


    END TRY

    BEGIN CATCH


                COMMIT TRAN
    END CATCH

Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas.

1. ¿Cual propiedad ACID viola la transaccion T?: Ninguna

2. ¿Cual es el Saldo de la cuenta A?: 300

3. ¿Cual es el Saldo de la cuenta B?: 50

Pregunta 7 Una secuencia de operaciones realizadas como una sola unidad lógica de trabajo se demonina ...
Finalizado

Puntúa 10,00
sobre 10,00

Respuesta: TRANSACCION
Pregunta 8  Esquema e Instancia de la Base de Datos “Bancos”
Finalizado
-- Tabla de Cuentas de Ahorro
Puntúa 15,00
sobre 15,00 create table Cuentas

ncta char(1) not null primary key,       -- Numero de Cuenta

dcta char(15) not null,                       -- Descripcion de la Cuenta

propietario char(40) not null,              -- Nombre del propietario

fecha date not null                            -- Fecha de inicio

-- Tabla de Movimientos de la Cuenta de Ahorros

create table MovCuentas

Resumen de retención de( datos


Descargar la app para dispositivos móviles
ntran integer  not null,             --Nro Movimiento

ncta char(1) not null,              -- Nro de Cuenta          

fecha date not null,                -- Fecha del Mvimiento

impt decimal,                        -- si impt>0 es abono, si impt<0 es retiro

check (impt<>0),

foreign key(ncta) references Cuentas(ncta),

primary key(ntra,ncta)

 Figura 1. Instancia de la Base de Datos Bancos

Dada la  siguiente Transacción T, que transfiere  fondos entre dos cuentas, retira 50 bs de la cuenta B y los
abona a la cuenta A.
DECLARE @monto DECIMAL
DECLARE @saldo DECIMAL
SET @monto=50
BEGIN TRY
           SELECT @saldo=SUM(impt) FROM MovCuentas WHERE ncta='B'
          IF @saldo>=@monto
              BEGIN
                     INSERT INTO MovCuentas VALUES(3,'A',GETDATE(),@monto)
                     INSERT INTO MovCuentas VALUES(3,'C',GETDATE(),-@monto)
              END
                   ROLLBACK TRAN
        END TRY
BEGIN CATCH
          PRINT 'ERROR AL INSERTAR'
END CATCH

                
 

Después de ejecutar  la transacción T usando la instancia de la BD de la Figura 1, responda las siguientes
preguntas.
1. ¿Cual propiedad ACID viola la transaccion T?: Atomicidad y Consistencia

2. ¿Cual es el Saldo de la cuenta A?: 350

3. ¿Cual es el Saldo de la cuenta B?: 50

◄ TP1-T3 (Teoría Gestión Lab1-T3 (Gestión de Transacciones en


Ir a...
Transacciones) la BD Banco) ►

También podría gustarte