See vignette("translation-function") and vignette("translation-verb") for details of overall translation technology. Key differences for this backend are:
SELECT uses TOP not LIMIT
Automatically prefixes # to create temporary tables. Add the prefix yourself to avoid the message.
dbplyr does its best to automatically create the correct type when needed, but can't do it 100% correctly because it does not have a full type inference system. This means that you many need to manually do conversions from time to time.
To convert from bit to boolean use x == 1
To convert from boolean to bit use as.logical(if(x, 0, 1))
Examples
library(dplyr, warn.conflicts =FALSE)lf <- lazy_frame(a =TRUE, b =1, c =2, d ="z", con = simulate_mssql())lf %>% head()lf %>% transmute(x = paste(b, c, d))# Can use boolean as is:lf %>% filter(c > d)# Need to convert from boolean to bit:lf %>% transmute(x = c > d)# Can use boolean as is:lf %>% transmute(x = ifelse(c > d,"c","d"))