Domanda

gente. Quando ho belived ero un genio e che i metadati è stato il mio beni immateriali, ho sviluppato una procedura in Firebird per tenere traccia delle modifiche su una sola tabella, qualcosa con id's e marche temporali. Così, Ive fatto una mossa intelligente e mega cancellato la fonte di questa procedura.

Qualcuno sa un decoder BLR, o le doc's che ho bisogno di costruire uno?

TIA.

È stato utile?

Soluzione

Ho visto uno strumento di visualizzazione BLR (nello strumento di amministrazione IB di Jason Wharton), ma sarebbe solo visualizzare i nomi BLR, non traslitterare torna al linguaggio SQL / proc. Penso che quello che stai cercando non esiste.

Puoi ottenere documentazione BLR qui , però.

Altri suggerimenti

C'è una bella BLR (binario) per BLR decodificatore (testo) in Firebird sé. È possibile attivare con set blob all (o set blobdisplay all). Si può chiamare da ISQL:

SQL> set term !;
SQL> create procedure p1
CON> as
CON>   declare n integer = 1;
CON> begin
CON>   n = n * 2;
CON> end!
SQL> set term ;!
SQL> 
SQL> set blob all;
SQL> commit;
SQL> 
SQL> select rdb$procedure_blr from rdb$procedures where rdb$procedure_name = 'P1';

RDB$PROCEDURE_BLR 
================= 
             1a:3 
==============================================================================
RDB$PROCEDURE_BLR:  
            blr_version5,
            blr_begin,
               blr_message, 1, 1,0,
                  blr_short, 0,
               blr_begin,
                  blr_declare, 0,0, blr_long, 0,
                  blr_assignment,
                     blr_literal, blr_long, 0, 1,0,0,0,
                     blr_variable, 0,0,
                  blr_stall,
                  blr_label, 0,
                     blr_begin,
                        blr_begin,
                           blr_assignment,
                              blr_multiply,
                                 blr_variable, 0,0,
                                 blr_literal, blr_long, 0, 2,0,0,0,
                              blr_variable, 0,0,
                           blr_end,
                        blr_end,
                  blr_end,
               blr_send, 1,
                  blr_begin,
                     blr_assignment,
                        blr_literal, blr_short, 0, 0,0,
                        blr_parameter, 1, 0,0,
                     blr_end,
               blr_end,
            blr_eoc

==============================================================================

Se avete ancora il database c'è una possibilità la fonte procedimento è ancora lì da qualche parte, ma contrassegnato come eliminato. Si può tentare di aprire il file di database su un editor esadecimale e cercare il nome della procedura.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top