use strong type
add test for oracle dialect