Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla


Objetivo: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
Hola!.

Mas o menos es un esquema o resumen de como funcionaria una aplicación con una base de datos de una tabla.
Si queréis añadir algo o modificar para mejorar ya sabéis.

Citar:

- Iniciar Base:

-- Comprobar si existe la base de datos.
-- Si existe:
------ Conectamos con la base.
------ Mostramos la tabla en un componente

-- Si no existe:
------ Crear directorios
------ Podemos crearla o podemos copiarla desde el origen del proyecto.(En caso de fuentes)
------ Conectamos con la base.
------ Mostramos la tabla en un componente


- Consultas: (Las que queramos hacer)


Naturalmente es muy simple. Pero creo que es una buena forma de desmenuzar la aplicación.

Estuve repasando base de datos de compañeros y es que como son para distintos proyectos,
varia mucho en cantidad de código. Para alguien que los ve por primera vez, parece complicado
ver tanta función y tanto procedimiento. (Lo es)

Saludos

Objetivo: Re: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
Una duda que me surge, que es mejor:
¿nos conectamos solo una vez a la base de datos y hacemos las consultas, y cuando se cierra el programa , cerramos la conexión ?
¿o cada vez que queramos hacer una consulta, nos conectamos, ejecutamos la consulta y cerramos la conexion, hasta la proxima consulta?

Saludos

Objetivo: Re: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
Julio:

Por lo visto después de cada operación hay que cerrar la conexión.
Quizás es por algún tipo de riesgo.
O por liberación de recursos.

http://www.argentina-hosting.com/ar...bases-de-datos/

Lo cierto es que en el manual de gambas la cierra después de una operación.
En algunas bases que he visto de los compañeros, la dejan abierta. Sera para evitar algún tipo de problema.

Saludos

Objetivo: Re: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
Yo siempre la abro al inicio de la aplicación y la dejo abierta con una comprobación de re-apertura por si se cierra (por time-out o algo así) en cada consulta.

Abrir y cerrar la conexión puede ser un lío enorme en cuestiones de actualización de registros, consultas múltiples, etc. etc.

Nunca he tenido ningún problema con eso (salvo los time-out de MySql, pero eso es fácil de solventar).

Saludos.

Perfil MP  
Objetivo: Re: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
Shordi:

¿ Y en sqlite3 has tenido problemas de time-out ?

Saludos

Objetivo: Re: Esquema O Resumen De Aplicación Con Una Base De Datos De Una Tabla
No, que yo recuerde, pero como uso funciones independientes del tipo de conexión que usan el re-open, pues no sé si lo daría si no se usase...

Esto del re-open es una chorrada. Consiste en preguntar antes de hacer la consulta. Por ejemplo, esta es la función estándar para crear un registro a partir de un formulario:

Public Function creaRegistro(tabla As String, oContenedor As Object, Optional conec As Connection) As Boolean

Dim rsDatos As Result
Dim lret As Variant

lret = True
If Not conec Then conec = mComun.hDatos 'conexión que se abrió al iniciar el programa
If Not conec.Opened Then 'ESTE ES EL RE-OPEN FAMOSO
Try conec.Open
Endif
rsDatos = conec.create(tabla)
rsDatos = pasacampos(oContenedor, rsDatos) 'Función estandar que pasa el contenido de los controles de un form -u otro control contenedor- a un result (el truco es que los controles se llamen igual que los campos)
rsDatos.Update
conec.Commit

Finally

Return lret

Catch
Message("Error: " & Error.Text & "\nEn: " & Error.where)
lret = False

End

última edición por shordi el Martes, 07 Enero 2014, 20:42; editado 1 vez
Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.1059s (PHP: -37% SQL: 137%)
Consultas SQL: 24 - Debug off - GZIP Activado