Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   paradox y campo memo (https://www.clubdelphi.com/foros/showthread.php?t=38915)

|NoName| 04-01-2007 12:33:10

paradox y campo memo
 
Antes que nada claro que empezé ayer con Delphi....resulta que cuando fui a crear la db para la aplicacion que estoy construyendo me salió por defecto paradox 7 así que es el driver que use (espero que no este mal).

En un campo se va a almacenar texto, normalmente superaría los 256 caracteres (unos 500 de media calculo que tendria) por lo que alpha queda descartado, entonces las otras 2 opciones que veo son memo y fmemo, entonces el problema que me surge es que el db manager que viene con delphi (database desktop) no me deja ingresar data en ellos, será que no los soporta?
La pregunta en concreto es si es correcto usar alguno de esos 2 campo y por otro lado como hago para meter datos en ellos.


EDIT: Otra duda que me acaba de surgir leyendo un poco en el foro....usando este manejador, la aplicación correrá en otros equipos? o al menos cuando cree el instalador podré incluir los archivos necesarios?

Gracias desde yá.

Lepe 04-01-2007 14:43:17

Paradox 7, es la última versión de ese tipo de tablas.

Al crear la tabla, te sugiero uses el int850, creo que el Database Desktop lo llamaba code page [...] En definitiva, usando el que viene por defecto, no podrás usar las letras "ñ", la tabla de códigos debería ser la 437 que es de España, pero la 850 es la internacional y permite el uso de otros caracteres adicionales.

El campo "fmemo" no lo recuerdo, solo recuerdo el "memo", que enlazado a un DBMemo (obviamente componente de delphi), funciona correctamente.

No veo utilidad añadir registros desde el propio Database Desktop. En delphi, bastaría un TTable, Tdatasource enlazados y el DBMemo apuntando al campo del TTable.

Para el instalador, debes añadir el BDE (Borland Database Engine) , del cual se ha hablado mucho en el foro,( buscando por "minireg", encontrarás no pocos hilos)

Saludos

roman 04-01-2007 19:28:17

Si estás empezando con Delphi, yo te recomendaría que te olvides de paradox y el database desktop. Estarías comenzando con una tecnología caduca, obsoleta y descontinuada. Intenta MySql o FireBird o Posgres. En fin, hay varias opciones gratuitas que son mucho mejores.

// Saludos

|NoName| 04-01-2007 19:40:11

Gracias por responder.

A partir de tu respuesta me surgen nuevas dudas.

Cita:

No veo utilidad añadir registros desde el propio Database Desktop. En delphi, bastaría un TTable, Tdatasource enlazados y el DBMemo apuntando al campo del TTable.
Es decir, a mi no me interesa que el usuario pueda agregar registros, pero Actualmente la base de datos esta vacia y necesito llenarla, como lo hago?


Cita:

Para el instalador, debes añadir el BDE (Borland Database Engine) , del cual se ha hablado mucho en el foro,( buscando por "minireg", encontrarás no pocos hilos)
Perfecto, ya estuve mirando.
Ahora, puedo usar algun otro manejador de modo que evite tener que hacer este maneje?
Es decir, la contra que le veo principalmente es que el hecho de que el usuario tenga que instalar una aplicación adicional para correr mi software, es decir, si de por sí se me haría costoso conseguir que el usuario instale mi programa al ver que requiere instalar otro adicional para que funcione se incrementan las posibilidades de que desista.
Salvo que el BDE se instale en 2do plano sin que el usuario lo note pero dudo mucho que sea así verdad?

|NoName| 04-01-2007 19:50:05

Cita:

Empezado por roman
Si estás empezando con Delphi, yo te recomendaría que te olvides de paradox y el database desktop. Estarías comenzando con una tecnología caduca, obsoleta y descontinuada. Intenta MySql o FireBird o Posgres. En fin, hay varias opciones gratuitas que son mucho mejores.

// Saludos


Hola Roman, la verdad me vendría de 10 porque con MySQL inclusive tengo experiencia, lo que me preocupa es lo que escribí arriba, que al distribuir la aplicacion funcione sin que el usuario necesite instalar el driver o si lo tiene que hacer que el mismo venga incluido en la aplicacion y se instale en forma silenciosa.

Un saludo.

roman 04-01-2007 19:56:08

Es que independientemente de si usas MySql o el bde, lo que yo recomendaría es usar algún creador de instaladores como Inno Setup que te creara un único ejecutable. Tu cliente simplemente abre ese ejecutable y sigue los pasos. Es realmente sencillo. Haces tu instalación, y al correrla, se copian todos los archivos que hayas indicado y en las rutas que hayas indicado.

// Saludos

|NoName| 04-01-2007 22:35:15

Bueno, ya pase los datos a MySQL instalando mysql-connector-odbc-noinstall-3.51.12-win32. :o

Un pequeño problemita que surgió: Como evito que al establecerse la conexión con la db me aparezca el cuadro para loguearme?

roman 04-01-2007 23:10:16

No sé qué componentes vayas a usar pero normalmente la cmponente de conexión tiene una propiedad LoginPrompt que pones a false para que no te muestre ese cuadro.

// Saludos

|NoName| 04-01-2007 23:17:08

mmm debo estar haciendo algo mal porque no encuentro esa propiedad, tengo 2 componentes, Table y Datasource.

|NoName| 04-01-2007 23:56:45

Creo haberlo solucionado usando este método:
http://www.clubdelphi.com/foros/show...ht=LoginPrompt

Saludos.

roman 05-01-2007 00:13:05

Siendo que estás en la etapa de experimentación, quizá quieras reconsiderar y usar otro medio de acceso a MySql. De por sí ODBC es una capa extra que puede afectar el rendimiento, pero más si lo utilizas através del BDE que ya es una tecnología obsoleta. Si persistes en ODBC, en todo caso creo que te convendría más usar las componentes ADO. Pero también puedes utilizar componentes más eficaces como ZEOS o MyDac. La primera es gratuita.

// Saludos

|NoName| 05-01-2007 01:21:38

Descargué ZEOSDBO-6.6.0-beta.zip pero realmente se me complicó para hacer la instalación, no hay alguna guia para "niubies" por ahí? :(

Gracias por tenerme paciencia.

EDIT: Acá encontré uno http://www.clubdelphi.com/foros/show...highlight=zeos :)

|NoName| 05-01-2007 02:24:35

Ya lo tengo instalado y funcionando, sin embargo ahora no me deja usar findkey.
Se que hay otros metodos como locate con los que puedo obtenerl alguna funcionalidad similar pero de momento no me resulta para nada practico.
Habrá alguna solución para esto?

Lepe 05-01-2007 08:56:48

¿Por qué no? Para mí es incluso más claro, ya que se indica los nombres de los campos.
Código Delphi [-]
if locate('usuario;clave',['pepe','miclave'], [locaseinsensitive]) then
 // se encontró
else
 // no se encontró

Saludos

|NoName| 05-01-2007 09:26:20

Creo que no soporta indices, por eso se me hace menos práctico.


La franja horaria es GMT +2. Ahora son las 21:35:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi