发表于:2010-09-28 | 2 个回复

  很多项目中需要动态创建表来存放一些临时的数据.有些临时表的名字是根据一定规则生成的,例如 表名 = “abc” + ID.如何利用 ibatis 来完成这个需求呢?

    <statement id="createRecord" parameterClass="int">
        CREATE TABLE record_$value$ (
          `id` bigint(20) NOT NULL auto_increment,
          `point_id` int(11) NOT NULL,
          `remark` varchar(512) default NULL,
          `type` tinyint(4) NOT NULL default '0',
          PRIMARY KEY  (`id`)
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    </statement>

  其中$_value$是动态内容,调用方法如下:

sqlMapClient.update("Record.createRecord", id);