Mối nghi ngờ đầu tiên của tôi là đường dẫn lớp java của bạn. Thay vì:
javaclasspath('mysql-connector-java-5.1.30-bin.jar')
Sử dụng
javaaddpath('C:\full\path\to\mysql-connector-java-5.1.30-bin.jar')
Nếu đó không phải là vấn đề, hãy bỏ qua DriverManager
(không thực sự giúp ích nhiều) và xem đoạn mã bên dưới có hoạt động hay không (hoặc lỗi ở đâu).
d = com.mysql.jdbc.Driver;
urlValid = d.acceptsURL('jdbc:mysql://localhost:3306/test'); %Should return true
props = java.util.Properties;
props.put('user','root'); props.put('password','1234');
con = d.connect('jdbc:mysql://localhost:3306/test',props)
DriverManager
cấu trúc không thực sự giúp ích nhiều. Nó dường như được thiết kế để cho phép một nhà phát triển tải lên một loạt các trình điều khiển và sau đó kết nối với bất kỳ cơ sở dữ liệu được hỗ trợ nào mà không cần biết hoặc quan tâm đến việc triển khai DB là gì (ví dụ:Mysql, Postgresql, Oracle, v.v.) Tôi chưa bao giờ thấy điều này là tính năng hữu ích. Tôi nghĩ (hy vọng?) Rằng điều này đang được sử dụng ít hơn để có lợi cho DataSource
xây dựng.
Bất kể, nếu đây là lần đầu tiên bạn kết nối Mysql với Matlab, tốt nhất bạn nên chỉ dẫn bằng cách sử dụng lớp Trình điều khiển được cung cấp.