![]() |
Stored Procedure,Triggers
Saludos al Foro y Feliz Año Nuevo.
Vamos con la primera pregunta del año.:) Tengo una pega y no encuentro ni explicación ni solución, haber si me ayudan a ver la Luz. Entorno: D6, FB15 ,componentes interbase. Inicialmente mediante un ibQuery desde delphi podía generar una nueva base de datos, creando tablas dominios, indices, Stored Procedure (SP),Triggers, en fin todo era felicidad.....:rolleyes:. Pero llego el día en que tuve que realizar una modificación en un SP, mediante un ibQuery realicé un RECREATE, y me devolvio el siguiente error: SQL error = 104 Token unknown -line 1,char xxx ?'. Proc....... Es lógico pensar que me equivoque. Tome la desición de borrar y crear el SP para evitar volver a utilizar RECREATE. Comenzo el calvario, podía perfectamente borrar el SP, pero al crearlo me devolvía el mismo error (Cambia el char), dejaba el cuerpo del SP vacío y me lo creaba, pero, si introducía cualquier instrucción el error salta y no lo crea. Mi estado de crisis aumenta cuando utilizo código de la SP original (sin tocar) y me devuelve el mismo error. Cuando hago un Copy-Paste del SP desde delphi al editor sql del ibExpert y lo ejecuto funciona perfectamente. Lo mismo me ha pasado al modificar un trigger, lo he conseguido desde ibExpert, aunque originalmnte lo podia hacer desde delphi (Creación del trigger). No se que pasa, quizás sea un problema de los componentes de interbase....:( Espero no haber liado mucho la pregunta. Saludos |
Saludos compañero,
Has resuelto tu poblema? Te comento que me ocurrio lo mismo.... y es como tu dices, el problema era los componentes. (habia actualizado por otra version). Your friend, StarKill Lima-Perú |
Buenasssssssssss
Lo he solucionado a medias de momento. Formateé el disco duro y volvi a instalar delphi y todo lo demas. He conseguido que la aplicación que antes genaraba bien las Bases de datos, lo vuelva a hacer, pero todavía no he conseguido cambiar el cuerpo del Trigger y Sp desde una aplicación. Seguiré probando (Todavía estamos a principio de año :) ) Saludos |
Supongo que metes el código DDL en un query tal que así:
y posteriormente lo ejetutas con Query.ExecSQL Si es así, y según el error que aportas, la sintaxis es errónea. Mira por si acaso en ese procedimiento que quieres ejecutar, tal vez quieras utilizar una variable tipo DATE y dependiendo del Dialecto de tu BD, a lo mejor no te lo permite y tendría que utilizar Timestamp. Suele ser un error muy común.. |
Cita:
Me impresiona, sorprende, confunde, extraña, fascina, desconcierta, me deja perplejo la "facilidad" con que muchos solucionan cualquier tipo de problema informático. :confused: |
Casimiro, no ha dicho explicitamente que formateando se haya quitado el error, simplemente ha dicho que ha formateado y que parcialmente ha solucionado el error... puede no que estén las dos cosas íntimamente relacionadas ;).
Claro, como tú no usas windows, no sabes que hay que formatearlo cada cierto tiempo :p Saludos |
Saludos a todos.
Efectivamente, el formatear el disco no es una solución. Pero era algo que tenía pendiente y aproveche el momento y encontré esa solución parcial. En contestación a ArdiIIa, el código que utilizo es: Código:
los identificadores como "NOMBRE_COBROS", son constantes que continen el nombre de la tabla. Este código me genera el error que os he dicho, pero si lo ejecuto desde el ibExpert me funciona bien (lógicamente cambiando las constantes por los nombres de las tablas) No utilizo el comando supend, ni tampoco utilizo el signo ^. Saludos |
Cita:
|
Muchas gracias.:p
El dialecto que utilizo es el 3. En cuanto pueda voy hacer las pruebas para comprobar esto.:D Ya te comentaré. |
La franja horaria es GMT +2. Ahora son las 02:47:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi