This repository has been archived on 2025-12-25. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
tcommon-studio-se/main/plugins/org.talend.librariesmanager/resources/java/sqltemplates/Teradata/TeradataCreateSourceTable.sqltemplate

44 lines
1.4 KiB
Plaintext

<%
EXTRACT(__SCHEMA__);
String fieldsSource = "";
boolean flagSource=false;
for(int i=0; i < __SCHEMA__.length; i++){
if(flagSource){
fieldsSource += ",";
}else{
flagSource=true;
}
if(__SCHEMA_DBTYPE__[i].equals("DECIMAL") || __SCHEMA_DBTYPE__[i].equals("VARCHAR") || __SCHEMA_DBTYPE__[i].equals("CHAR") || __SCHEMA_DBTYPE__[i].equals("BYTE") || __SCHEMA_DBTYPE__[i].equals("VARBYTE")){
fieldsSource += (__SCHEMA_NAME__[i] + " " + __SCHEMA_DBTYPE__[i] +" ("+ __SCHEMA_LENGTH__[i] +") ");
} else if(__SCHEMA_DBTYPE__[i].equals("DECIMAL")){
fieldsSource += (__SCHEMA_NAME__[i] + " " + __SCHEMA_DBTYPE__[i] +" ("+ __SCHEMA_LENGTH__[i] +","+ __SCHEMA_PRECISION__[i] +") ");
} else {
fieldsSource += (__SCHEMA_NAME__[i] + " " + __SCHEMA_DBTYPE__[i]);
}
if(__SCHEMA_NULLABLE__[i].equals("false")){
fieldsSource += " NOT NULL";
}
}
String primary = "";
for(int j=0; j < __SCHEMA__.length; j++){
if(__SCHEMA_ISKEY__[j].equals("true") && __SCHEMA_NULLABLE__[j].equals("false")){
if(primary.startsWith(" , PRIMARY KEY")) {
primary += ","+__SCHEMA_NAME__[j];
} else {
primary += " , PRIMARY KEY ("+__SCHEMA_NAME__[j];
}
}
}
if(!primary.equals("")){
fieldsSource += primary+")";
}
%>
CREATE MULTISET TABLE <%= __DATABASE_NAME__ %>.<%= __TABLE_NAME__ %> ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
<%= fieldsSource %>);