public CUBRIDTemplates(char escape, boolean quote) {
super("\"", escape, quote);
setDummyTable(null);
addCustomType(NumericBooleanType.DEFAULT);
setParameterMetadataAvailable(false);
setNullsFirst(null);
setNullsLast(null);
setDefaultValues("\ndefault values");
setArraysSupported(false);
add(Ops.DateTimeOps.DATE, "trunc({0})");
add(Ops.DateTimeOps.DAY_OF_YEAR, "dayofyear({0})");
add(Ops.DateTimeOps.DAY_OF_WEEK, "dayofweek({0})");
add(Ops.DateTimeOps.YEAR_WEEK, "(year({0}) * 100 + week({0}))");
add(Ops.DateTimeOps.ADD_YEARS, "date_add({0}, interval {1s} year)");
add(Ops.DateTimeOps.ADD_MONTHS, "date_add({0}, interval {1s} month)");
add(Ops.DateTimeOps.ADD_WEEKS, "date_add({0}, interval {1s} week)");
add(Ops.DateTimeOps.ADD_DAYS, "date_add({0}, interval {1s} day)");
add(Ops.DateTimeOps.ADD_HOURS, "date_add({0}, interval {1s} hour)");
add(Ops.DateTimeOps.ADD_MINUTES, "date_add({0}, interval {1s} minute)");
add(Ops.DateTimeOps.ADD_SECONDS, "date_add({0}, interval {1s} second)");
add(Ops.DateTimeOps.DIFF_YEARS, "(year({1}) - year({0}))");
add(Ops.DateTimeOps.DIFF_MONTHS, "months_between({1}, {0})");
add(Ops.DateTimeOps.DIFF_WEEKS, "ceil(({1}-{0}) / 7)");
add(Ops.DateTimeOps.DIFF_DAYS, "({1}-{0})");
add(Ops.DateTimeOps.DIFF_HOURS, "ceil(" + diffSeconds + " / 3600)");
add(Ops.DateTimeOps.DIFF_MINUTES, "ceil(" + diffSeconds + " / 60)");