Greenplum Database 4.3 利用mybatis框架动态生成表

1.采用mabatis3注解形式,不在采用xml配置sql方式。因为数据仓库大多用来计算,没有复杂的查询条件

mapper类注解创建表代码:

package com.aicai.cepchassis.fastsampling.dao;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

public interface HttpLogTableDao {
	
	@Update("create table ${tableName} (  "
			+ "id serial			NOT NULL ,  "
			+ "\"machineId\"  		varchar(256), "
			+ " \"requestPath\"  	varchar(256), "
			+ " referer  			varchar(256),  "
			+ "ip  					varchar(256), "
			+ " \"userAgent\" 		varchar(256),  "
			+ "vuid 				varchar(256), "
			+ " \"timeLocal\" 		timestamp without time zone,  "
			+ "message 				varchar(256) )"
			+ "with (  appendonly=true,  orientation=row )"
			+ "DISTRIBUTED BY (id)")
	void createTable(@Param("tableName") String tableName);
	
	
}
表名采用下划线形式分割单词,不采用驼峰形式。

字段名采用驼峰形式。故字段吗需要加“”双引号。

表名参数注解

@Param("tableName")
,sql中用
 ${tableName} 字符串替换形式获得。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。