Parte 4
Capítulo 22. Bases de datos y DAO
1.-Defina
Base de Datos, Tabla, Registro y Campo.
Base
de datos: Es una colección de datos organizados de tal forma que puedan ser
recuperados y procesados para generar información, para un propósito
específico.
Tabla:
Puede visualizarse como una matriz de datos de dos dimensiones, que almacena
datos de una sola naturaleza, uniforme y completa.
Registro:
Es una ocurrencia de la colección de campos. Vienen a ser las filas que están
contenidas dentro de las tablas.
Campo:
Se les llaman también atributos. Son las columnas de las que está compuesta la
tabla.
2.Explique
que es una Clave primaria y como debe escogerse.
Es
el conjunto de campos que en cantidad mínima, suficiente y necesaria
identifican como único a un registro dentro de una tabla. Debe tomarse en
cuenta que el nombre de las personas, al igual que su apellido, no son una
buena opción para clave primaria, ya que podría darse el caso de que se
repitieran; también hay que tener cuidado de no excederse del número mínimo
suficiente y necesario de campos.
3.Explique
que es una Clave Externa.
Se
da cuando los campos primos de una tabla se encuentran dentro de otra tabla, y
esta clave nos permite acceder a ellos.
4.Explique
que es la Integridad referencial.
Se
da cuando en todos los casos existe correspondencia entre los registros de las
tablas que tienen relación de integridad.
5.Explique
que es un Índice.
Son
referencias lógicas a la ubicación física de los registros, sobre la base de un
criterio que determina su organización y posición dentro de un orden. Se
utilizan para la localización rápida de registros, y algunas veces, para
ordenar los registros.
6.Explique
la figura 22.4.
La
interfaz del usuario, que es lo que el usuario ve y con lo que interactúa,
recibe datos válidos para la base de datos y acepta los comandos o solicitudes
que el usuario hace mediante la manipulación de los formularios; dichas
solicitudes no se realiza sobre el archivo físico de la base de datos, sino a
través del motor de base datos, que es el intermediario que realiza las
operaciones solicitadas en el almacén de datos y devuelve el resultado deseado
a la aplicación.
7.Defina
las siglas de SQL.
Lenguaje
de Consultas Estructurado.
8.Defina
las siglas de DAO y Explique para que sirve.
Objetos
de Acceso a Datos. Es una colección de clases de objetos que proporcionan las
propiedades y los métodos que permiten llevar a cabo las operaciones necesarias
para administrar un sistema basado en el modelo relacional. Esto incluye funciones
para crear bases de datos, definir tablas, campos e índices, establecer
relaciones entre tablas y desplazarse por la base de datos, modificar su
contenido y crear consultas sobre ella.
9.Explique
para que sirve el Control Data.
Ofrece
una capacidad limitada para tener acceso sin programación a bases de datos
existentes.
10.Defina
las siglas de ODBC.
Conectividad
Abierta de Bases de Datos.
11.Mencione
que paquetes usan archivos con extensión.mdb
Bases
de datos nativos de Visual Basic o Microsoft Access.
12.Mencione
que paquetes usan archivos con extensión.dbf
FoxPro/dbBase.
13.Explique
la figura 22.5 indicando el significado de sus elementos.
El
objeto DBEngine se encuentra en la parte superior de la jerarquía y corresponde
al motor de base de datos Microsoft Jet. Después de él, todos los objetos hacia
abajo son de colección. Existe una colección llamada Workspaces (espacios de
trabajo), que contiene uno o más objetos Workspace. Cada objeto Workspace tiene
una colección Database (bases de datos), la cual contiene uno o más objetos
Database. Cada objeto Database tiene una colección TableDefs (definición de
tablas), que contiene uno o más objetos TableDef, y así sucesivamente.
14.Defina
las siglas de DDL y Explique para que sirve.
Lenguaje
de Definición de Datos. Consta de las propiedades y métodos utilizados para
definir y crear la propia base de datos, incluyendo sus tablas, campos,
relaciones, etcétera.
Constituye
el esquema de la base de datos.
15.Defina
las siglas de DML y Explique para que sirve.
Lenguaje
de Manipulación de Datos. Consta de las propiedades y los métodos utilizados
para escribir aplicaciones que manipulan y tienen acceso a bases de datos
existentes. Esto incluye características para consultar la base de datos,
desplazarse a través de sus tablas, realizar actualizaciones y agregar o
eliminar registros.
Capítulo 23. Lenguaje de Definición de datos y DAO
1.Explique
como se usa DDL para crear una estructura de Base de Datos (en 9 pasos).
- Habilitar DAO (DBEngine)
-
Definir una base de datos (Database)
-
Definir un espacio de trabajo (Workspace) para la base de datos
-
Realizar las definiciones de tablas (TableDef)
-
Realizar las definiciones de campos (Field)
-
Realizar las definiciones de índices (Index)
-
Realizar las definiciones de las relaciones (Relation)
-
Asignar propiedades específicas de la base de datos
-
Integrar de la base de
datos
-
2.Explique
la diferencia entre Workspace y Workspaces.
Si
el objeto sobre el que se basan otros objetos es Workspace, la colección que se
genere a partir de dicho objeto será Workspaces; el último término está en
plural, ya que indica que son varios los objetos que existen en la colección.
3.Explique
las dos formas en que podemos hacer referencia a IDVenta.
Podemos
identificarla por la “ruta de acceso” completa a través de las colecciones
anidadas a las que pertenece, utilizando el separador “.” (punto); o también
podemos identificarla a través de una cadena correspondiente a la propiedad
Name del objeto Field, que pertenece a la colección. Al hacer referencia
explícitamente a un miembro de la colección podemos utilizar el separador “!”
(signo de admiración) en lugar del punto.
4.Explique
que es una Variable objeto.
Son
las variables que almacenan objetos en lugar de datos. Debe declararse como un
objeto, no como un dato.
5.Explique
la sintaxis de la instrucción Set.
Set
NombreVariable = ObjetoAAsignar
Se
realiza la asignación de un objeto a una variable.
6.Explique
la instrucción Dim para una Variable objeto.
Dim fldVenta As Field
Se
habilita una variable de nombre fldIDVenta para que maneje un objeto de tipo
Field.
7.Explique
el método CreateDatabase.
El
método CreateDatabase crea un objeto Database. Sus argumentos básicos son: Nombre,
Localidad, Opciones. Donde Nombre es el nombre del archivo de base de datos a
crear; y Localidad es la constante que especifica la localidad que tendrá la
base de datos.
8.Explique
el método CreateTableDef.
El
método CreateTableDef crea un objeto TableDef. Su argumento básico es Nombre,
el cual se refiere al nombre de la tabla a crear. Debe ser un nombre de tabla
válido para el controlador de bases de datos que se esté utilizando.
9.Explique
el método CreateIndex.
El
método CreateIndex crea un objeto Index. Sus argumentos básicos son: Nombre,
Tipo, Tamaño; donde Nombre se refiere al nombre del campo a crear. Debe ser un
nombre de campo válido. Tipo es el tipo de datos que tendrá el campo.
10.Explique
el método CreateRelation.
Este
método crea un objeto Relation. Sus argumentos básicos son: Nombre,
TablaServidora, TablaCliente, Atributo. Nombre es el nombre de la relación.
TablaServidora es el nombre de la tabla secundaria de la relación, la que se
accede a través de la clave externa. TablaCliente es el nombre de la tabla
primaria de la relación, la que posee la clave externa. Atributo es la
constante o suma de ellas, que determinan el comportamiento de la relación.
11.Explique
para que sirve el bloque With... End With.
Para
simplificar el código cuando es necesario realizar múltiples definiciones a las
propiedades de un mismo objeto.
12.Explique
para que sirve el método Append.
Sirve
para integrar a la base de datos un objeto cuando es asociado a su objeto padre
a través de este método.
13.Traduzca: Required, Default
value, Allow zero lenght, Foreign table, Foreign name, For each.
Required:
Requerido.
Default
value: valor predeterminado.
Allow
zero length: Longitud permitida cero.
Foreign table: tabla foránea.
Foreign Name: nombre foráneo.
For
each: Para cada uno.
14.Investigue
y explique que significa Ingeniería inversa.
Se
le conoce así en el terreno computacional, al hecho de obtener a partir de un
producto final (base de datos, programa ejecutable) un producto originador de
éste (modelo de datos, código fuente).
Capítulo 24.
Lenguaje de Manipulación de Datos y DAO.
1.Cuáles
son los dos tipos de validaciones que puede tener una aplicación que actualiza
bases de datos.
Validaciones
a nivel tabla y validaciones a nivel base de datos.
2.Mencione
los 3 métodos disponibles en DAO, para realizar las tareas de apertura y cierre
de bases de datos.
Open Database, OpenRecordset y Close.
3.Mencione
los 4 métodos disponibles con DAO, para realizar tareas de escritura de datos.
AddNew, Edit, Update y Delete.
4.Qué
almacena la directriz App.Path
El
archivo de base de datos para su manipulación.
5.Mencione
la sintaxis de OpenDatabase, y escriba un ejemplo.
OpenDatabse(Archivo)
Dim dbBase As Database
dbBase= OpenDatabase(App.Path & “\” & “Ventas.mdb”)
6.Mencione
la sintaxis de OpenRecordset, y escriba un ejemplo.
OpenRecordset(Tabla, Tipo)
Dim dbBase As Database
Dim rstVendedor As Recordset
Set dbBase = OpenDatabase(App.Path & “\” &
“Ventas.mdb”)
Set
rstVendedor = OpenRecordset(“Vendedor”)
7.Mencione
los 5 tipos de RecordSet disponibles en DAO.
Table, Dynaset, Snapshot, Dynamic y Forward-only.
8.En
qué consiste el modo de edición.
Cuando
Visual Basic permite modificar el contenido del registro activo cuando se
trabaja con Recordset.
9.Qué
es el registro activo.
Dado
que el motor de base de datos permite apuntar a un registro a la vez, por cada
Recordset que se tenga abierto; se le llama registro activo al registro al que
se está apuntando.
10.Mencione
para qué sirve el método AddNew.
Se
encarga de agregar un registro en blanco al Recordset, mantiene el registro
nuevo como registro activo y lo deja en modo de edición.
11.Mencione
para qué sirve el método Edit.
Se
encarga de poner en modo de edición al registro activo.
12.Mencione
para qué sirve el método Update.
Transfiere
los cambios realizados en el registro activo y en el Recordset al almacén de
datos.
13.Mencione
para qué sirve el método Delete.
Modifica
el almacén de datos de tal forma que el registro activo sea eliminado.
14.Qué
métodos de escritura de datos tienen implícito el modo de edición.
Debido
a que hay tareas que trabajan directamente con el almacén de datos, si un
método no trabaja con el Recordset, no requiere entrar en modo de edición.
15.Explique
para qué sirven las propiedades Index y NoMatch, y el método Seek.
Index:
Permite definir cuál es el índice sobre el que se hará la búsqueda. Dependiendo
de la formación del índice que se seleccione, será el número de valores que se
especificarán para la búsqueda, así como el tipo de datos que estos tienen.
NoMatch:
Determina si la última búsqueda realizada no encontró ocurrencias coincidentes
(True). En caso de que la búsqueda termine con resultados satisfactorios, el
valor de esta propiedad es (False). Esta propiedad se actualiza en tiempo de
ejecución.
Seek:
Permite buscar una clave dentro de un archivo, modificando la propiedad NoMatch
en caso de que se encuentre (False) o no (True) la clave buscada.
16.Mencione
los 4 métodos para movimiento entre datos.
MoveFirst, MoveLast, MovePrevious y MoveNext.
17.Cuál
es la diferencia entre búsquedas utilizando Seek y Find.
Que
Seek busca un determinado registro a partir del conocimiento de su clave; por
lo tanto, cuando realizamos búsquedas no basadas en claves e índices podemos
utilizar Find.
18.Qué
tipo de RecordSet se requiere para realizar búsquedas utilizando Find.
El
Recordset debe ser de tipo Dynaset.
19.Mencione
las 4 variantes de métodos Find.
FindFirst, FindNext, FindPrevious y FindLast.
20.Explique
la sintaxis de los métodos Find, y escriba un ejemplo.
La
forma de evaluar el éxito de los métodos Find es similar a Seek; la propiedad
NoMatch indicará si se encontró (False) o no (True) una coincidencia.
Dim dbBase As Database
Dim rstVendedor As Recordset
Set dbBase = OpenDatabase(App.Path & “\” &
“Ventas.mdb”)
Set rstVendedor = OpenRecordset(“Vendedor”,
dbOpenDynaset)
rstVendedor.FindFirst “IDVendedor > 100”
If rstVendedor.NoMatch Then
MsgBox
“No hay un ID mayor a cien”
Else
MsgBox
“Ya hay un ID mayor a cien”
End
If
dbBase.Close
21.Si trabajando con DAO le aparece
un error que dice Update o CancelUpdate sin AddNew o Edit, qué puede estar
sucediendo y cómo se puede solucionar.
Se presenta cuando intenta asignar valores a
una referencia de campo en un Recordset, sin que se encuentre en modo de
edición, ya sea por la aplicación de AddNew o de Edit. La solución es que,
antes de realizar asignaciones a las referencias de campo en un Recordset,
asegúrese de estar en modo de edición.