Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-01-2008
toito_lucho toito_lucho is offline
Registrado
 
Registrado: ene 2008
Posts: 3
Poder: 0
toito_lucho Va por buen camino
elevar a 'n' un número

hola soy nuevo en esto de FireBird, pero me esta empezando a gustar
bueno el problema q tengo es q no encuentro una funcion de potencia, es decir q elevar a cualquier numero un determinado real, anteriormente utilizaba sr_power, pero ahora creo que solo existe la funcion para la raiz cuadrado, perdon por la ignorancia, pero necesito ese favor, ojala y alguien
me heche una manito, de antemano gracias a todos los del foro
Responder Con Cita
  #2  
Antiguo 03-01-2008
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Buenos dias.

Debes registrar la funcion power que viene definida en la librería fbudf.dll
Para ello puedes actualizar tu base de datos con el fichero fbudf.sql
o ejecutar el siguiente codigo sql en tu base de datos:
Código SQL [-]
--FBUDF_API paramdsc* power(paramdsc* v, paramdsc* v2, paramdsc* rc)
declare external function dPower
double precision by descriptor, double precision by descriptor,
double precision by descriptor
returns parameter 3
entry_point 'power' module_name 'fbudf';

Ambos ficheros se instalan en la carpeta UDF de Firebird.

Un saludo y feliz navidad
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #3  
Antiguo 03-01-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
También puedes crear una función:

Código SQL [-]
create procedure elevar (base double precision, potencia double precision)
returns (resultado doublre precision)
as
begin
   resultado = base;
   while (potencia > 1) do
   begin
      resultado = resultado * base;
      potencia = potencia - 1;
   end
end
Código SQL [-]
select resultado from elevar(2,3) from rdb$database
Código SQL [-]
create procedure / trigger ...
as
declare variable total double precision;
begin
   [...]
   execute procedure elevar(2,3) returning_values(:total);
   [...]
end
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
numero hdd madmai API de Windows 1 07-10-2006 18:13:21
Numero de conexiones.... TheWOlf Firebird e Interbase 4 16-07-2005 21:22:09
Elevar un numero trabuc Varios 1 20-12-2004 11:39:16
De número a letra samame Varios 1 10-03-2004 17:31:41
Número de cd? ShakeRock Varios 10 26-02-2004 05:27:04


La franja horaria es GMT +2. Ahora son las 05:51:55.


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