![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Bueno, ya he leido bastante sobre el tema y voy a empezar a ponerlo en practica, pero me surgen una serie de dudas.
Primero decir que utilizo el EMS SQL Manager 2005 que me ha parecido bastante bueno para crear BD's y tablas y manejar estas (he de decir que la consulta que antes tardaba 15 segundos sobre una tabla paradox de 500.000 registros en red, ahora y segun la SP que he creado, me tarda 0,06 seg), y me he decantado por los MDO componentes (Mercury). 1.- Como se le dice a una SP, qué indice (de todos los que tenga una BD) deseo utilizar para la consulta. 2.- En el "for select ..... do" de una SP se supone que me recoje una serie de registros, pues bien, esos registros ¿como los muestro en un grid o en una stringlist o en dbgrid (esto creo que va a ser que no si no quiero usar MDOTable)? ya que no deseo utilizar el componente MDOTable (porque supongo que tendria el mismo problema de lentitud que con paradox). 3.- Perdonad por mi ignorancia pero.... ¿se puede manejar el resultado de la consulta de una SP (con su for select...do) en un MDOTQuery?. 4.- Si la aplicacion que voy a hacer tiene que correr tanto en monopuesto o en red (al usuario se le da la opcion de elegir una de las dos, nunca las dos a la vez) ¿como tengo que crear la BD con el EMS o con el IBExpert, en local o en remote?. 5.- Al hacer el traspaso de las tablas paradox a firebird con el InterbaseDataPump me dice que la BD está en "ForceWrite" y que el proceso tardará 3 veces más. Eso ¿qué es?, ¿Influirá esa caracteristica en la velocidad o lentitud de la aplicación?. ¿Cómo se puede cambiar esa caracteristica?. 6.- Vuelvo a insistir, perdonad por mi ignorancia, pero ahora mismo tengo un cacao de nuevos conceptos y adecuar mi forma de pensar (en programacion) a esos nuevos conceptos que a muchos no llego. He visto que en algunas SP hay al final unas lineas GRANT, ¿eso que es?, ¿Cual es su finalidad?. ¿No basta con llamarlas desde las MDOStoredProc sin esas lineas al final?. 7.- ¿Debo utilizar firebird 1.5 o 2.0 ? 8.- No os canseis más que por ahora vais bien servidos con estas consultas, proximamente... más (cuando el cacao mental vaya "increchendo"). Saludos.
__________________
El que pregunta es tonto durante 5 minutos, el que no pregunta es tonto para toda su vida. |
|
#2
|
|||||
|
|||||
|
Cita:
Cita:
el caso anterior es para cuando necesitas mostrar algo, recuerda que los parametros :c1, :c2, :c3 deben de ser parametros de salida, y el siguiente para hacer una modificacion... en este no debe de ir suspend y los parametros pueden ser variables internas o parametros de salida, pero solo tendran el valor del ultimo registro del for select;
3.- Perdonad por mi ignorancia pero.... ¿se puede manejar el resultado de la consulta de una SP (con su for select...do) en un MDOTQuery?. si se puede de la siguiente forma:
y el resultado seria un dataSet con los parametros de salida (en mi ejemplo anterior :c1, :c2, :c3) Cita:
Cita:
Cita:
Recuerda que si vas a ejecutar un sp que inserte, modifique o borre debes de usar los MDOStoredProc o MDOQuery.Execute y si quieres que te traigan resultados se debe de hacer por medio de un MDOQuery |
|
#3
|
|||
|
|||
|
Vamos a ver si me explico mejor para los puntos que no se han quedado claros o no los he entendido.
Punto 1.- En una BD yo puedo tener varios indices de una misma tabla para que en el tema de consultas sea mas rapido. Si consulto una cosa me interesaria utilizar un indice y si consulto otra, pues me interesaria utilizar otro indice. Pues bien, como se le puede indicar eso (si es posible) en una SP?. Punto 2.- Ya tenia mas o menos claro lo de el for select...do y el suspend, mi pregunta era (para no utilizar MDOTtable) que una vez hecha la consulta con una MDOStoredProc, como recorro el conjunto de registros resultante y con que componente se pueden mostrar graficamente. Por ahora esas son mis dudas, seguiremos informando. Ah, por cierto, con el Firebird vienen unos ejemplos, pero son muy basicos, alguien sabe de alguna aplicacion con sus fuentes algo mas elaborada que utilice los MDO para estudiarla? (creo que es la mejor manera de aprender). Saludos.
__________________
El que pregunta es tonto durante 5 minutos, el que no pregunta es tonto para toda su vida. Última edición por llonigualker fecha: 19-03-2007 a las 08:31:08. |
|
#4
|
||||
|
||||
|
Cita:
digamos hay una tabla llamada tabla con los campos c1, c2, c3 y c4 de los cuales los campos c1 y c2 están indexados.
como tal en el ejemplo anterior es buscar por un indice y/o por el otro, en es ejemplo la idea es que :c1, :c2 son parámetros de entrada y :c3, :c4 parámetros de salida, con los parámetros de entra yo puedo decidir por cual de los dos buscar, por decir algo si quiero solo buscar lo que hay en el campo indexado c1 mando un valor que se debe encontrar en dicho campo por medio del parámetro :c1 y mando un null en el parámetro :c2 y al revés si quiero buscar por el campo indexado c2 (espero sea esto lo que busques) Cita:
y si esta bien enlazado a un dbGrid se vera los campos c3 y c4 en el dbGrid |
|
#5
|
|||
|
|||
|
Gracias, seguiré probando e investigando.
Otro dia, mas. Saludos.
__________________
El que pregunta es tonto durante 5 minutos, el que no pregunta es tonto para toda su vida. |
|
#6
|
|||
|
|||
|
He tardado poco.
Me ha surgido una duda, estoy definiendo en una tabla un campo blob de texto (subtipe 1) pero no se que juego de caracteres asignarle, si el win1252 o el iso8859_1. Es para pasar el contenido de un campo memo de texto (con sus acentos y todo) de una tabla paradox a esta nueva tabla. ¿Cual debo de utilizar? Saludos.
__________________
El que pregunta es tonto durante 5 minutos, el que no pregunta es tonto para toda su vida. |
|
#7
|
||||
|
||||
|
En España, yo estoy usando el ISO con COLLATE ES_ES, así permite eñes y acentos sin problemas en la BD.
Por lo visto en Firebird 2.0 hay un collate (cotejamiento) que permite hacer búsquedas independientemente de los acentos y mayúsculas, tendrías que mirar la documentación. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| TRANSFORMAR PROGRAMA paradox a firebird | rickymarti | Firebird e Interbase | 11 | 10-02-2008 11:56:17 |
| Paradox a Firebird | Vlady | Conexión con bases de datos | 2 | 22-11-2006 21:05:19 |
| De Paradox a Firebird | morta71 | Firebird e Interbase | 5 | 05-10-2006 20:31:24 |
| Pasar Tabla de Paradox a Firebird | JoanKa | Firebird e Interbase | 4 | 12-02-2005 02:57:54 |
| exportar una tabla de oracle 9i a paradox o firebird | ARCON | Oracle | 1 | 28-10-2004 10:38:22 |
|