public static Builder builder() { return new Builder() { @Override protected SQLTemplates build(char escape, boolean quote) { return new TeradataTemplates(escape, quote); } }; }
public TeradataTemplates(char escape, boolean quote) { super("\"", escape, quote); setNullsFirst(null); setNullsLast(null); setDummyTable(null); setCountViaAnalytics(true); setDefaultValues("\ndefault values"); setPrecedence(Precedence.ARITH_LOW + 1, Ops.CONCAT); setPrecedence(Precedence.COMPARISON, Ops.EQ, Ops.EQ_IGNORE_CASE, Ops.NE); add(Ops.NE, "{0} <> {1}"); add(Ops.MOD, "{0} % {1}", Precedence.ARITH_HIGH); add(Ops.STRING_LENGTH, "character_length({0})"); add(Ops.INDEX_OF, "(instr({0},{1})-1)"); add(Ops.INDEX_OF_2ARGS, "(instr({0},{1},{2}+1)-1)"); add(Ops.STRING_CAST, "cast({0} as varchar(255))"); add(Ops.StringOps.LOCATE, "instr({1},{0})"); add(Ops.StringOps.LOCATE2, "instr({1},{0},{2s})"); add(Ops.StringOps.LEFT, "substr({0}, 1, {1})"); add(Ops.StringOps.RIGHT, "substr({0}, (character_length({0})-{1s}) + 1, {1})"); add(Ops.MATCHES, "(regexp_instr({0}, {1}) = 1)"); add(Ops.MATCHES_IC, "(regex_instr({0l}, {1}) = 1)"); add(Ops.MathOps.LOG, "(ln({0}) / ln({1}))"); add(Ops.MathOps.RANDOM, "cast(random(0, 1000000000) as numeric(20,10))/1000000000"); add(Ops.MathOps.COT, "(cos({0}) / sin({0}))"); add(Ops.MathOps.COTH, "(exp({0} * 2) + 1) / (exp({0} * 2) - 1)");
sqlTemplate = SQLiteTemplates.builder(); } else if (SQLTemplatesConstants.DB_PRODUCT_NAME_TERADATA.equals(dbType)) { sqlTemplate = TeradataTemplates.builder(); } else if (SQLTemplatesConstants.DB_PRODUCT_NAME_SYBASE.equals(dbType)) { sqlTemplate = SQLServerTemplates.builder();
return TeradataTemplates.builder();
@Override protected SQLTemplates build(char escape, boolean quote) { return new TeradataTemplates(escape, quote); } };
public TeradataQueryFactory(Provider<Connection> connection) { this(new Configuration(new TeradataTemplates()), connection); }
public TeradataQuery(Connection conn) { this(conn, new Configuration(new TeradataTemplates()), new DefaultQueryMetadata()); }
public static SQLTemplates getSQLTemplates() { switch (target.get()) { case CUBRID:return new CUBRIDTemplates(); case DERBY: return new DerbyTemplates(); case H2: return new H2Templates(); case HSQLDB:return new HSQLDBTemplates(); case SQLSERVER: return new SQLServerTemplates(); case MYSQL: return new MySQLTemplates(); case ORACLE:return new OracleTemplates(); case POSTGRES: return new PostgresTemplates(); case SQLITE:return new SQLiteTemplates(); case TERADATA: return new TeradataTemplates(); } throw new IllegalStateException("Unknown mode " + mode); }