weka连接mysql

前提条件是已经安装了Weka,并且下载好了mysql-connector-java-5.1.15-bin.jar文件放在了Weka-3-6下面的lib文件夹中了。软件版本,jar包版本根据个人的来选择。


1.到weka安装目录下去找到weka.jar,解压weka.jar文件到当前文件夹,打开weka文件夹中的experiment文件夹。

2.删除DatabaseUtils.props,将DatabaseUtils.props.mysql重命名为DatabaseUtils.props。

3.修改现有的DatabaseUtils.props# JDBC driver (comma-separated list)jdbcDriver=org.gjt.mm.mysql.Driver

[修改为-->jdbcDriver=com.mysql.jdbc.Driver]# database URLjdbcURL=jdbc:mysql://server_name:3306/database_name

[这个建议不修改,方便后面进入weka后,通过修改相应的'server_name','datebase_name'来连接相应的mysql数据库.其实大家在这里像这样子jdbcURL=jdbc:mysql://localhost:3306/foodmart写死了也没什么,进入weka后同样可以修改,但显得不够专业不是!~]

4.修改以下文件

# specific data types

# string, getString() = 0; --> nominal

# boolean, getBoolean() = 1; --> nominal

# double, getDouble() = 2; --> numeric

# byte, getByte() = 3; --> numeric

# short, getByte()= 4; --> numeric

# int, getInteger() = 5; --> numeric

# long, getLong() = 6; --> numeric

# gloat, getFloat() = 7; --> numeric

# date, getDate() = 8; --> date

# text, getString() = 9; --> string

#time, getTime() = 10; --> date

#timestamp, getTime() = 11; --> date

[由于weka仅支持名词型(nominal),数值型(numeric),字符串(string),日期(date).所以我们要将现在数据库中的数据类型对应到这四种类型上来.][将上面的内容改成(就是将注释符号#去掉):

# specific data types

string, getString() = 0; --> nominal

boolean, getBoolean() = 1; --> nominal

double, getDouble() = 2; --> numeric

byte, getByte() = 3; --> numeric

short, getByte()= 4; --> numeric

int, getInteger() = 5; --> numeric

long, getLong() = 6; --> numeric

gloat, getFloat() = 7; --> numeric

date, getDate() = 8; --> date

text, getString() = 9; --> string

time, getTime() = 10; --> date

timestamp, getTime() = 11; --> date

5.添加#mysql-conversion

TINYINT=3

SMALLINT=4

SHORT=4

SHORT=5

INTEGER=5

INT=5

BIGINT=6

LONG=6

REAL=7

NUMERIC=2

DECIMAL=2

FLOAT=2

DOUBLE=2

CHAR=0

TEXT=0

VARCHAR=0

LONGVARCHAR=9

BINARY=0

VARBINARY=0

LONGVARBINARY=9

BIT=1BLOB=9DATE=8

TIME=8DATETIME=8

TIMESTAMP=8

里参考了一些网友的帖子,自己google了一些,这里MySQL常用的数据类型都设置好了,再也不用担心weka不识别对应的数据类型了^-^大家注意,上面有部分'#'要去掉哦!#[其他设置,暂时不用修改]

6.制作weka.jar并替换原来的jar因为weka软件运行时需要读取weka.jar,所以你修改之后要重新打包jar文件替换原来的jar才可以运行weka软件成功连接数据库.

6.1.从命令行进入%WEKA_HOME%/weka(例如我的在D:\Program Files\Weka\Weka-3-6,打开cmd后输入“d:”,进入D盘,输入“D:\Program Files\Weka\Weka-3-6”到Weka-3-6目录下,可以通过“dir”查看目录下有哪些文件)

6.2.执行jar cvf weka.jar weka/*.*(打包的时候,java_cup文件夹总不能打包进去,导致后面报错,拖动java_cup进入jar包,解决)

6.3.进入%WEKA_HOME%/weka 会发现打包好了的weka.jar(没有的请刷新一下)

6.4.将%WEKA_HOME%/weka下的weka.jar复制到%WEKA_HOME%(建议将原来的weka.jar改名成weka.jar.sample备用,大家今后如果针对不同数据库创建了多个weka.jar不妨将其改名成-->'weka.jar.数据库名',用的时候将后缀去掉就行,体力活咱做一次就够了!~)

7.运行weka奇怪的问题:运行-->Weka 3.5(不带控制台)进入weka连不上数据库(mysql,oracle,sqlserver都不行),说找不到合适的JDBC DRIVER.但运行-->Weka 3.5 (with console)则全部正常.期待达人解答!~不理它,能用就行,毕竟现在还附送个'控制台'!~

7.1.运行-->Weka 3.5 (with console)

7.2.选择Applications--->Explorer

7.3.选择Open DB...

7.4.选择User...根据自己的情况修改Database URL,Username,Password.7.5.选择Connect注意窗口下方的Info里的信息!... = true --->恭喜你,连接成功!~... = false --->失败!~别灰心,向上一步步地检查,你离true不远了!~

7.6.连接成功后光标会自动选择Query栏,等着各位兄台来输入sql语句.小弟输入一个超简单的,然后选择Execute执行sql语句.

7.7.执行成功后在Result栏中会有数据显示.

7.8.选择OK,呵呵!~weka已经捕获了相关数据,并显示相关信息,接下来各位爱怎么玩,就怎么玩!~

7.9.如果我不写sql语句,在连接成功后直接选择OK,会怎么样?嘿嘿,weka会说连接数据库有问题,没有合适的驱动.什么也不显示.所以还是告诉它我们需要哪些数据,不然接下来就没得玩了啦,所以需要先选择数据库中的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值