weka 連接MySQL配置

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數據對照文件

  1. # Database settings for MySQL 3.23.x, 4.x  
  2. #  
  3. # General information on database access can be found here:  
  4. # http://weka.wikispaces.com/Databases  
  5. #  
  6. # url:     http://www.mysql.com/  
  7. # jdbc:    http://www.mysql.com/products/connector/j/  
  8. # author:  Fracpete (fracpete at waikato dot ac dot nz)  
  9. # version: $Revision: 11885 $  
  10.   
  11. # JDBC driver (comma-separated list)  
  12. jdbcDriver=org.gjt.mm.mysql.Driver  
  13.   
  14. # database URL  
  15. jdbcURL=jdbc:mysql://server_name:3306/lunwen  
  16.   
  17. # specific data types  
  18. # string, getString() = 0;    --> nominal  
  19. # boolean, getBoolean() = 1;  --> nominal  
  20. # double, getDouble() = 2;    --> numeric  
  21. # byte, getByte() = 3;        --> numeric  
  22. # short, getByte()= 4;        --> numeric  
  23. # int, getInteger() = 5;      --> numeric  
  24. # long, getLong() = 6;        --> numeric  
  25. # float, getFloat() = 7;      --> numeric  
  26. # date, getDate() = 8;        --> date  
  27. # text, getString() = 9;      --> string  
  28. # time, getTime() = 10;       --> date  
  29. # timestamp, getTime() = 11;  --> date  
  30. TINYINT=3  
  31. SMALLINT=4  
  32. SHORT=5  
  33. INTEGER=5  
  34. INT=5  
  35. INT_UNSIGNED=6  
  36. BIGINT=6  
  37. LONG=6  
  38. REAL=7  
  39. NUMERIC=2  
  40. DECIMAL=2  
  41. FLOAT=2  
  42. DOUBLE=2  
  43. CHAR=0  
  44. TEXT=0  
  45. VARCHAR=0  
  46. LONGVARCHAR=9  
  47. BINARY=0  
  48. VARBINARY=0  
  49. LONGVARBINARY=9  
  50. BIT=1  
  51. BLOB=8  
  52. DATE=8  
  53. TIME=8  
  54. DATETIME=8  
  55. TIMESTAMP=8  
  56. # other options  
  57. CREATE_DOUBLE=DOUBLE  
  58. CREATE_STRING=TEXT  
  59. CREATE_INT=INT  
  60. CREATE_DATE=DATETIME  
  61. DateFormat=yyyy-MM-dd HH:mm:ss  
  62. checkUpperCaseNames=false  
  63. checkLowerCaseNames=false  
  64. checkForTable=true  
  65.   
  66. # All the reserved keywords for this database  
  67. # Based on the keywords listed at the following URL (2009-04-13):  
  68. # http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-reference-reservedwords-5-0.html  
  69. Keywords=\  
  70.   ADD,\  
  71.   ALL,\  
  72.   ALTER,\  
  73.   ANALYZE,\  
  74.   AND,\  
  75.   AS,\  
  76.   ASC,\  
  77.   ASENSITIVE,\  
  78.   BEFORE,\  
  79.   BETWEEN,\  
  80.   BIGINT,\  
  81.   BINARY,\  
  82.   BLOB,\  
  83.   BOTH,\  
  84.   BY,\  
  85.   CALL,\  
  86.   CASCADE,\  
  87.   CASE,\  
  88.   CHANGE,\  
  89.   CHAR,\  
  90.   CHARACTER,\  
  91.   CHECK,\  
  92.   COLLATE,\  
  93.   COLUMN,\  
  94.   COLUMNS,\  
  95.   CONDITION,\  
  96.   CONNECTION,\  
  97.   CONSTRAINT,\  
  98.   CONTINUE,\  
  99.   CONVERT,\  
  100.   CREATE,\  
  101.   CROSS,\  
  102.   CURRENT_DATE,\  
  103.   CURRENT_TIME,\  
  104.   CURRENT_TIMESTAMP,\  
  105.   CURRENT_USER,\  
  106.   CURSOR,\  
  107.   DATABASE,\  
  108.   DATABASES,\  
  109.   DAY_HOUR,\  
  110.   DAY_MICROSECOND,\  
  111.   DAY_MINUTE,\  
  112.   DAY_SECOND,\  
  113.   DEC,\  
  114.   DECIMAL,\  
  115.   DECLARE,\  
  116.   DEFAULT,\  
  117.   DELAYED,\  
  118.   DELETE,\  
  119.   DESC,\  
  120.   DESCRIBE,\  
  121.   DETERMINISTIC,\  
  122.   DISTINCT,\  
  123.   DISTINCTROW,\  
  124.   DIV,\  
  125.   DOUBLE,\  
  126.   DROP,\  
  127.   DUAL,\  
  128.   EACH,\  
  129.   ELSE,\  
  130.   ELSEIF,\  
  131.   ENCLOSED,\  
  132.   ESCAPED,\  
  133.   EXISTS,\  
  134.   EXIT,\  
  135.   EXPLAIN,\  
  136.   FALSE,\  
  137.   FETCH,\  
  138.   FIELDS,\  
  139.   FLOAT,\  
  140.   FLOAT4,\  
  141.   FLOAT8,\  
  142.   FOR,\  
  143.   FORCE,\  
  144.   FOREIGN,\  
  145.   FROM,\  
  146.   FULLTEXT,\  
  147.   GOTO,\  
  148.   GRANT,\  
  149.   GROUP,\  
  150.   HAVING,\  
  151.   HIGH_PRIORITY,\  
  152.   HOUR_MICROSECOND,\  
  153.   HOUR_MINUTE,\  
  154.   HOUR_SECOND,\  
  155.   IF,\  
  156.   IGNORE,\  
  157.   IN,\  
  158.   INDEX,\  
  159.   INFILE,\  
  160.   INNER,\  
  161.   INOUT,\  
  162.   INSENSITIVE,\  
  163.   INSERT,\  
  164.   INT,\  
  165.   INT1,\  
  166.   INT2,\  
  167.   INT3,\  
  168.   INT4,\  
  169.   INT8,\  
  170.   INTEGER,\  
  171.   INTERVAL,\  
  172.   INTO,\  
  173.   IS,\  
  174.   ITERATE,\  
  175.   JOIN,\  
  176.   KEY,\  
  177.   KEYS,\  
  178.   KILL,\  
  179.   LABEL,\  
  180.   LEADING,\  
  181.   LEAVE,\  
  182.   LEFT,\  
  183.   LIKE,\  
  184.   LIMIT,\  
  185.   LINES,\  
  186.   LOAD,\  
  187.   LOCALTIME,\  
  188.   LOCALTIMESTAMP,\  
  189.   LOCK,\  
  190.   LONG,\  
  191.   LONGBLOB,\  
  192.   LONGTEXT,\  
  193.   LOOP,\  
  194.   LOW_PRIORITY,\  
  195.   MATCH,\  
  196.   MEDIUMBLOB,\  
  197.   MEDIUMINT,\  
  198.   MEDIUMTEXT,\  
  199.   MIDDLEINT,\  
  200.   MINUTE_MICROSECOND,\  
  201.   MINUTE_SECOND,\  
  202.   MOD,\  
  203.   MODIFIES,\  
  204.   NATURAL,\  
  205.   NOT,\  
  206.   NO_WRITE_TO_BINLOG,\  
  207.   NULL,\  
  208.   NUMERIC,\  
  209.   ON,\  
  210.   OPTIMIZE,\  
  211.   OPTION,\  
  212.   OPTIONALLY,\  
  213.   OR,\  
  214.   ORDER,\  
  215.   OUT,\  
  216.   OUTER,\  
  217.   OUTFILE,\  
  218.   PRECISION,\  
  219.   PRIMARY,\  
  220.   PRIVILEGES,\  
  221.   PROCEDURE,\  
  222.   PURGE,\  
  223.   READ,\  
  224.   READS,\  
  225.   REAL,\  
  226.   REFERENCES,\  
  227.   REGEXP,\  
  228.   RELEASE,\  
  229.   RENAME,\  
  230.   REPEAT,\  
  231.   REPLACE,\  
  232.   REQUIRE,\  
  233.   RESTRICT,\  
  234.   RETURN,\  
  235.   REVOKE,\  
  236.   RIGHT,\  
  237.   RLIKE,\  
  238.   SCHEMA,\  
  239.   SCHEMAS,\  
  240.   SECOND_MICROSECOND,\  
  241.   SELECT,\  
  242.   SENSITIVE,\  
  243.   SEPARATOR,\  
  244.   SET,\  
  245.   SHOW,\  
  246.   SMALLINT,\  
  247.   SONAME,\  
  248.   SPATIAL,\  
  249.   SPECIFIC,\  
  250.   SQL,\  
  251.   SQLEXCEPTION,\  
  252.   SQLSTATE,\  
  253.   SQLWARNING,\  
  254.   SQL_BIG_RESULT,\  
  255.   SQL_CALC_FOUND_ROWS,\  
  256.   SQL_SMALL_RESULT,\  
  257.   SSL,\  
  258.   STARTING,\  
  259.   STRAIGHT_JOIN,\  
  260.   TABLE,\  
  261.   TABLES,\  
  262.   TERMINATED,\  
  263.   THEN,\  
  264.   TINYBLOB,\  
  265.   TINYINT,\  
  266.   TINYTEXT,\  
  267.   TO,\  
  268.   TRAILING,\  
  269.   TRIGGER,\  
  270.   TRUE,\  
  271.   UNDO,\  
  272.   UNION,\  
  273.   UNIQUE,\  
  274.   UNLOCK,\  
  275.   UNSIGNED,\  
  276.   UPDATE,\  
  277.   UPGRADE,\  
  278.   USAGE,\  
  279.   USE,\  
  280.   USING,\  
  281.   UTC_DATE,\  
  282.   UTC_TIME,\  
  283.   UTC_TIMESTAMP,\  
  284.   VALUES,\  
  285.   VARBINARY,\  
  286.   VARCHAR,\  
  287.   VARCHARACTER,\  
  288.   VARYING,\  
  289.   WHEN,\  
  290.   WHERE,\  
  291.   WHILE,\  
  292.   WITH,\  
  293.   WRITE,\  
  294.   XOR,\  
  295.   YEAR_MONTH,\  
  296.   ZEROFILL  
  297.   
  298. # The character to append to attribute names to avoid exceptions due to  
  299. # clashes between keywords and attribute names  
  300. KeywordsMaskChar=_  
  301.   
  302. #flags for loading and saving instances using DatabaseLoader/Saver  
  303. nominalToStringLimit=50  
  304. idColumn=auto_generated_id  
相關文章
相關標籤/搜索