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
|
|||
|
|||
Argumentos en procedimientos
Porqué siempre que he de pasar una constante de tipo string como argumento de un procedimiento almacenado he de pasarla en una variable para que no aparezcan unas comillas de más que hacen que no sea el valor que deseaba pasar. ¿Cómo debería pasar dicha constante para no tener que usar una variable intermedia?
|
#2
|
|||
|
|||
Por lo que entendi
puede hacer lo siguiente
o declare variable var1 varChar(10); Var1 = 'string'; execute procedure <nombresp> :Var1; (Lo He usado ) Juan carlos |
#3
|
||||
|
||||
Desde Delphi??
Tal como lo harias con una variable, pero la tenes declarada en la sección const Hasta luego
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#4
|
|||
|
|||
No me refería a eso, sino a invocar el procedimiento almacenando desde otro procedimiento o disparador. Por ejemplo:
execute procedure dame_resultado('A'); donde el argumento está definido como char(1). Dentro del procedimiento al comparar el parámetro con 'A': ... if (argumento='A') then ... la comparación me devuelve false ya que el argumento me lo entiende como ''A''. La única forma que he encontrado de solucionarlo es declarando una variable del mismo tipo char(1) asignarle 'A' e invocar el procedimiento con dicha variable no con la constante. Mi pregunta es si hay alguna forma de hacerlo sin tener que utilizar dicha variable intermedia y por supuesto, intentar comprender el porqué lo hace así... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|