weka数据库连接

来源:互联网 发布:弄玩网络女主播 编辑:程序博客网 时间:2024/06/05 06:30

 1.下载mysql-connector-java-3.1.12-bin.jar,据说weka不支持太高的版本,所以我下载这个比较早期的版本.
2.将mysql-connector-java-3.1.12-bin.jar加入到classpath中.
  在windows中:我的电脑/属性/高级/环境变量/在classpath的最后加上;/YourPath/mysql-connector-java-3.1.12-bin.jar
  在Linux中,su - vi /etc/profile,在classpath最后加上:/YourPath/mysql-connector-java-3.1.12-bin.jar
  Windows最好重启一下,Linux退出控制台,然后再进入控制台即可.
3.(本步不是必须的).提取DatabaseUtils.props,解压weka.jar,将experiment/DatabaseUtils.props拷贝到weka的安装目录下.其它的文件可删除.修改DatabaseUtils.props,(以Linux为例,Windows可参照进行)
  1)在jdbcDriver=RmiJdbc.RJDriver,jdbc.idbDriver,org.gjt.mm.mysql.Driver,com.mckoi....这行前加一个#号注释掉.
  2)去掉jdbcDriver=org.gjt.mm.mysql.Driver前面的#.
  3)在#jdbcURL=jdbc:idb=experiments.prp前加#号,注释掉本行.
  4)jdbcURL=jdbc:mysql://localhost:3306/test去掉本行前的#号,使之起作用.

4.此时应该能正常使用WeKa的数据库功能.点击Explorer时如果提示找不到org.gjt.mm.mysql.Driver,将mysql-connector-java-3.1.12-bin.jar拷贝到$JAVA_HOME/jre/lib/ext/下面即可.

5.链接数据库成功后,如果数据库表字段与weka不同时,要在DatabaseUtils.props里做转换,方法如下:
  1)weka连接数据库
  2)desc tableName,这样就知道了该表中有什么字段.对照DatabaseUtils.props中已经定义的转换,就知道还有什么字段是没转换的.
  3)查找TIMESTAMP=8,然后将要转换的字段列在下面:
    ========   
    TIMESTAMP=8
    BLOB=1
    .....
    ========
  4)如果字段名里有空格,用下划线或反斜线代替空格即可,如:
    INT_UNSIGNED=5

原创粉丝点击