BLR2SQL est un outil permettant la traduction de traces BLR obtenues par la définition du nom logique RDMS$DEBUG_FLAGS à "Bn".

Restriction : Ce programme est basé sur la grammaire BLR associée à Rdb 5.1 ainsi que les clauses de type join (outer join, inner join, etc...).

                       blr2sql.zip

Exemple :

$ blr2sql :== $ dev:[dir]blr2sql
$ type test.blr
(VERSION 4
  BLR$K_BEGIN
    BLR$K_MESSAGE 1 5
      DSC$K_DTYPE_L 0
      DSC$K_DTYPE_L 0
      DSC$K_DTYPE_CHAR 6 (sub-type: 0)
      DSC$K_DTYPE_L 0
      DSC$K_DTYPE_CHAR 1 (sub-type: 0)
    BLR$K_MESSAGE 2 0
    BLR$K_FOR
      BLR$K_RSE  1
        BLR$K_RELATION ART 1
      BLR$K_END
      BLR$K_BEGIN
        BLR$K_SEND  1
          BLR$K_BEGIN
            BLR$K_ASSIGNMENT
              BLR$K_FIELD 1 PRDNUM
              BLR$K_PARAMETER2 1 2 1
            BLR$K_ASSIGNMENT
              BLR$K_FIELD 1 FLAG
              BLR$K_PARAMETER2 1 4 3
            BLR$K_ASSIGNMENT
              BLR$K_LITERAL
                DSC$K_DTYPE_L 0       "0"
              BLR$K_PARAMETER 1 0
          BLR$K_END
      BLR$K_END
    BLR$K_SEND  1
      BLR$K_BEGIN
        BLR$K_ASSIGNMENT
          BLR$K_LITERAL
            DSC$K_DTYPE_L 0       "100"
          BLR$K_PARAMETER 1 0
      BLR$K_END
  BLR$K_END
BLR$K_EOC)
$ blr2sql test.blr
----------------------------------------------
ART T1
-----
Select T1.PRDNUM  , T1.FLAG  , "0"
  from ART T1
$