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


Subject: 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

Subject: 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

Subject: 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

Subject: 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.

Profile PM  
Subject: 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

Subject: 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

Last edited by shordi on Tuesday, 07 January 2014, 20:42; edited 1 time in total
Profile PM  

Page 1 of 1


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Generation Time: 0.0882s (PHP: -30% SQL: 130%)
SQL queries: 23 - Debug Off - GZIP Enabled