Firebird sql optimizer fix

Сори, что по русски пишу, но по английски я это описалово не осилю.

Проблема:
Для  запросов типа такого:
db.GetTable<MyTable>().Any(x => x.Field == param);

должен генерится такой sql
```
select case
  when exists(exists(select * from mytable t where t.Field = @param)) then 1
  else 0
end from rdb$database
```
проблема в том, что Firebird sql optimizer инлайнит параметр. Для строк/чисел - это не проблема, но вот если мы хотим искать по блобу, то тут проблема есть, блобы же не могут быть литералами в sql.

Вообще логически обязательно нужно инлайнить только параметры между select и from, но НЕ в where/join и тд, так это требование самого FB(запросы типа select @param from rdb$database он не переваривает). 
Фикс именно это и делает.

ЗЫ Any - по блобу - это не надуманная задача. в FB принято хранить гуиды в таком типе CHAR(16) CHARACTER SET OCTETS COLLATE OCTETS 
чарсет OCTETS означает, что данные сервером воспринимают чисто как поток байт и программе эту колонку вообще говоря нужно как DataType.Blob помечать. Так что по факту это поиск не по блобу, а по гуиду.
ЗЫ2 Все тесты естественно проходят.