weka鏈接sqlserver或MySQL步驟相同,只不過驅動和轉換文件不一樣。html
一、首先,下載weka,解壓weka.jar;java
二、找到weka\experiment 文件夾下的DatabaseUtils.props.mssqlserver(鏈接sqlserver)或DatabaseUtils.props.mysql(鏈接mysql)進行修改:mysql
(這裏的weka目錄是指weka.jar文件,使用壓縮軟件打開顯示)sql
sqlserver驅動加載:
# JDBC driver (comma-separated list)
jdbcDriver=com.microsoft.jdbc.sqlserver.SQLServerDriver
數據庫鏈接:數據庫
若是在本機上能夠將server_name改成127.0.0.1或者localhost
# database URL
jdbcURL=jdbc:sqlserver://server_name:數據庫名服務器
mysql驅動加載:
# JDBC driver (comma-separated list)
jdbcDriver=org.gjt.mm.mysql.Driver
數據庫鏈接:app
# database URL
jdbcURL=jdbc:mysql://server_name:3306/數據庫名sqlserver
數據類型的轉換:this
因爲weka僅支持名詞型(nominal)、數值型(numeric)、字符串、日期(date)。因此咱們要將如今數據庫中的數據類型對應到這四種類型上來。url
如下數據類型對應的句子前面的註釋符合去掉。因爲SQL Server2000有其餘的數據類型Weka尚不能識別,因此咱們在下面再添加上
smallint=3
datetime=8等等
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
varchar=0 //主要是這下面四行,找對位置加上
float=2
tinyint=3
int=5
其餘說明,咱們暫時用不到,不用去管了
# other options
CREATE_DOUBLE=DOUBLE PRECISION
CREATE_STRING=VARCHAR(8000)
CREATE_INT=INT
checkUpperCaseNames=false
checkLowerCaseNames=false
checkForTable=true
三、複製到主目錄中並重命名爲DatabaseUtils.props;
四、主目錄中新建文件夾名爲lib;下載驅動到lib中,如:sqljdbc或mysql-connector-Java-5.1.39-bin
五、修改RunWeka.ini,在文件的最後修改成
cp=%CLASSPATH%;F:\Weka-3-8\lib\mysql-connector-java-5.1.39-bin.jar(驅動的位置)
保存;
六、配置環境,
「個人電腦」屬性,設置環境變量
(1)新建變量WEKA_HOME,值爲weka的安裝目錄,如(F:\Weka-3-8)
(2)在CLASSPATH變量中添加「;%WEKA_HOME%\lib\mysql-connector-java-5.0.8-bin.jar」
(注意驅動的版本號與電腦中版本號一致)
七、運行weka,進入explorer——>open DB
在URL框中輸入:jdbcURL=jdbc:mysql://localhost:3306/數據庫名(localhost是服務器名稱,注:確保數據庫存在)點擊user:輸入用戶名和密碼後,點擊connect;若是下面的info框中,顯示connecting to :jdbc:mysql://localhost:3306/數據庫名=true,則鏈接成功;不然失敗。
若失敗,可在評論中說明,我會盡可能解答。
MYSQL數據對照文件:
- # Database settings for MySQL 3.23.x, 4.x
- #
- # General information on database access can be found here:
- # http://weka.wikispaces.com/Databases
- #
- # url: http://www.mysql.com/
- # jdbc: http://www.mysql.com/products/connector/j/
- # author: Fracpete (fracpete at waikato dot ac dot nz)
- # version: $Revision: 11885 $
-
- # JDBC driver (comma-separated list)
- jdbcDriver=org.gjt.mm.mysql.Driver
-
- # database URL
- jdbcURL=jdbc:mysql://server_name:3306/lunwen
-
- # 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
- # float, getFloat() = 7; --> numeric
- # date, getDate() = 8; --> date
- # text, getString() = 9; --> string
- # time, getTime() = 10; --> date
- # timestamp, getTime() = 11; --> date
- TINYINT=3
- SMALLINT=4
- SHORT=5
- INTEGER=5
- INT=5
- INT_UNSIGNED=6
- 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=1
- BLOB=8
- DATE=8
- TIME=8
- DATETIME=8
- TIMESTAMP=8
- # other options
- CREATE_DOUBLE=DOUBLE
- CREATE_STRING=TEXT
- CREATE_INT=INT
- CREATE_DATE=DATETIME
- DateFormat=yyyy-MM-dd HH:mm:ss
- checkUpperCaseNames=false
- checkLowerCaseNames=false
- checkForTable=true
-
- # All the reserved keywords for this database
- # Based on the keywords listed at the following URL (2009-04-13):
- # http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-reference-reservedwords-5-0.html
- Keywords=\
- ADD,\
- ALL,\
- ALTER,\
- ANALYZE,\
- AND,\
- AS,\
- ASC,\
- ASENSITIVE,\
- BEFORE,\
- BETWEEN,\
- BIGINT,\
- BINARY,\
- BLOB,\
- BOTH,\
- BY,\
- CALL,\
- CASCADE,\
- CASE,\
- CHANGE,\
- CHAR,\
- CHARACTER,\
- CHECK,\
- COLLATE,\
- COLUMN,\
- COLUMNS,\
- CONDITION,\
- CONNECTION,\
- CONSTRAINT,\
- CONTINUE,\
- CONVERT,\
- CREATE,\
- CROSS,\
- CURRENT_DATE,\
- CURRENT_TIME,\
- CURRENT_TIMESTAMP,\
- CURRENT_USER,\
- CURSOR,\
- DATABASE,\
- DATABASES,\
- DAY_HOUR,\
- DAY_MICROSECOND,\
- DAY_MINUTE,\
- DAY_SECOND,\
- DEC,\
- DECIMAL,\
- DECLARE,\
- DEFAULT,\
- DELAYED,\
- DELETE,\
- DESC,\
- DESCRIBE,\
- DETERMINISTIC,\
- DISTINCT,\
- DISTINCTROW,\
- DIV,\
- DOUBLE,\
- DROP,\
- DUAL,\
- EACH,\
- ELSE,\
- ELSEIF,\
- ENCLOSED,\
- ESCAPED,\
- EXISTS,\
- EXIT,\
- EXPLAIN,\
- FALSE,\
- FETCH,\
- FIELDS,\
- FLOAT,\
- FLOAT4,\
- FLOAT8,\
- FOR,\
- FORCE,\
- FOREIGN,\
- FROM,\
- FULLTEXT,\
- GOTO,\
- GRANT,\
- GROUP,\
- HAVING,\
- HIGH_PRIORITY,\
- HOUR_MICROSECOND,\
- HOUR_MINUTE,\
- HOUR_SECOND,\
- IF,\
- IGNORE,\
- IN,\
- INDEX,\
- INFILE,\
- INNER,\
- INOUT,\
- INSENSITIVE,\
- INSERT,\
- INT,\
- INT1,\
- INT2,\
- INT3,\
- INT4,\
- INT8,\
- INTEGER,\
- INTERVAL,\
- INTO,\
- IS,\
- ITERATE,\
- JOIN,\
- KEY,\
- KEYS,\
- KILL,\
- LABEL,\
- LEADING,\
- LEAVE,\
- LEFT,\
- LIKE,\
- LIMIT,\
- LINES,\
- LOAD,\
- LOCALTIME,\
- LOCALTIMESTAMP,\
- LOCK,\
- LONG,\
- LONGBLOB,\
- LONGTEXT,\
- LOOP,\
- LOW_PRIORITY,\
- MATCH,\
- MEDIUMBLOB,\
- MEDIUMINT,\
- MEDIUMTEXT,\
- MIDDLEINT,\
- MINUTE_MICROSECOND,\
- MINUTE_SECOND,\
- MOD,\
- MODIFIES,\
- NATURAL,\
- NOT,\
- NO_WRITE_TO_BINLOG,\
- NULL,\
- NUMERIC,\
- ON,\
- OPTIMIZE,\
- OPTION,\
- OPTIONALLY,\
- OR,\
- ORDER,\
- OUT,\
- OUTER,\
- OUTFILE,\
- PRECISION,\
- PRIMARY,\
- PRIVILEGES,\
- PROCEDURE,\
- PURGE,\
- READ,\
- READS,\
- REAL,\
- REFERENCES,\
- REGEXP,\
- RELEASE,\
- RENAME,\
- REPEAT,\
- REPLACE,\
- REQUIRE,\
- RESTRICT,\
- RETURN,\
- REVOKE,\
- RIGHT,\
- RLIKE,\
- SCHEMA,\
- SCHEMAS,\
- SECOND_MICROSECOND,\
- SELECT,\
- SENSITIVE,\
- SEPARATOR,\
- SET,\
- SHOW,\
- SMALLINT,\
- SONAME,\
- SPATIAL,\
- SPECIFIC,\
- SQL,\
- SQLEXCEPTION,\
- SQLSTATE,\
- SQLWARNING,\
- SQL_BIG_RESULT,\
- SQL_CALC_FOUND_ROWS,\
- SQL_SMALL_RESULT,\
- SSL,\
- STARTING,\
- STRAIGHT_JOIN,\
- TABLE,\
- TABLES,\
- TERMINATED,\
- THEN,\
- TINYBLOB,\
- TINYINT,\
- TINYTEXT,\
- TO,\
- TRAILING,\
- TRIGGER,\
- TRUE,\
- UNDO,\
- UNION,\
- UNIQUE,\
- UNLOCK,\
- UNSIGNED,\
- UPDATE,\
- UPGRADE,\
- USAGE,\
- USE,\
- USING,\
- UTC_DATE,\
- UTC_TIME,\
- UTC_TIMESTAMP,\
- VALUES,\
- VARBINARY,\
- VARCHAR,\
- VARCHARACTER,\
- VARYING,\
- WHEN,\
- WHERE,\
- WHILE,\
- WITH,\
- WRITE,\
- XOR,\
- YEAR_MONTH,\
- ZEROFILL
-
- # The character to append to attribute names to avoid exceptions due to
- # clashes between keywords and attribute names
- KeywordsMaskChar=_
-
- #flags for loading and saving instances using DatabaseLoader/Saver
- nominalToStringLimit=50
- idColumn=auto_generated_id