现在的位置: 首页 > 综合 > 正文

TERADATA–JAVA连接

2013年10月04日 ⁄ 综合 ⁄ 共 1732字 ⁄ 字号 评论关闭

 TERADATA 数据库可谓 是数据仓库 的头头了~~ 但是国内比较少这方面的文章吧~

用java连接teradata 其实也跟连接其他数据库插不多!

1. 本地配置数据源 采用JDBC ODBC连接

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

con=DriverManager.getConnection("jdbc:odbc:kj021320");//这里我在本地配置了一个数据源叫kj021320 这样就可以直接获得connection了

2.直接采用teradata官方的jar包

Class.forName("com.ncr.teradata.TeraDriver");

//记得要导入官方的2个jar包<tdgssjava.jar><terajdbc4.jar>   1个XML配置文件<TdgssUserConfigFile.xml> 这个是关键

//然后url就可以这样写

con= DriverManager.getConnection("jdbc:teradata://IP/DATABASE", "username", "password");

//根据官方所示有两种URL连接方式

The application's connection URL should be changed as follows:

 JDBC Type 3:   jdbc:teradata://gwhost:port/dbshost
 JDBC Type 4:   jdbc:teradata://dbshost

具体上面嘛~ 呵呵 虽然都是连接同样的数据库 但是ODBC跟官方提供的JAR 提供的操作数据库信息是不一样的

那我们采用DatabaseMetaData来看看 数据库更方面的信息

JDBC:ODBC

DataBaseName:Teradata
DataBaseVersion:05.01.0105  V2R
the Numeric Function:ABS,EXP,LOG,MOD,PI,SQRT
the String Function:CONCAT,LEFT,LENGTH,LOCATE,LTRIM,RTRIM,SUBSTRING,UCASE
the TimeDate Function:CURDATE,CURTIME,DAYOFMONTH,DAYOFWEEK,DAYOFYEAR,HOUR,MINUTE,MONTH,MONTHNAME,NOW,QUARTER,SECOND,TIMESTAMPADD,TIMESTAMPDIFF,WEEK,YEAR
the System Function:USERNAME

JDBC-jar:

DataBaseName:Teradata
DataBaseVersion:V2R05.01.01.05
the Numeric Function:ABS(arg),ACOS(arg),ACOSH(arg),ASIN(arg),ASINH(arg)ATAN(arg),ATAN2(x,y),ATANH(arg),COS(arg),COSH(arg)EXP(arg),LN(arg),LOG(arg),NULLIFZERO(arg)SIN(arg),SINH(arg),SQRT(arg),TAN(arg),TANH(arg),ZEROIFNULL(arg)
the String Function:TRIM, SUBSTRING, SUBSTR, MSUBSTR, INDEX,MINDEX, VARGRAPHIC, CHAR2HEXINT, UPPER
the TimeDate Function:EXTRACT(<year/month/day> FROM <date_value>),EXTRACT(<hour/minute/second> FROM <real_value>),ADD-MONTHS(<date_expr>, <integer_expr>)
the System Function:CHARACTERS, BYTES, SUM, CSUM, MSUM, AVERAGE, MAVG, COUNT, MINIMUM, MAXIMUM, MLINREG, QUALIFY, QUANTILE, RANK

 

采用ODBC的时候还列举了蛮多的存储过程.....

抱歉!评论已关闭.