win10下用Matlab调用MySQL数据库及相关问题的解决方法

系统环境不再多说,如果还没有安装MySQL数据库,请移步到我的上一篇博客https://blog.csdn.net/xue_csdn/article/details/90701652
以下代码部分均为matlan语言

1、安装JDBC驱动
下载地址:https://dev.mysql.com/downloads/connector/j/
在这里插入图片描述
在这里插入图片描述
完成后,解压,将文件夹中的mysql-connector-java-8.0.13.jar文件复制到matlab的D:\Program Files\MATLAB\R2018b\java\jar\toolbox路径下,然后在路径D:\Program Files\MATLAB\R2018b\toolbox\local中找到classpath.txt文件,打开,添加
$matlabroot/java/jar/toolbox/mysql-connector-java-8.0.13.jar,保存。
在这里插入图片描述
2、启动MySQL
这一步不能忘!
在cmd中输入

net start mysql808080

这一步无需以管理员身份打开cmd

3、matlab代码
1)数据库连接

% 依次是数据库名,用户名,密码,driver,url
conn=database('test','root','xxxxxxxx','com.mysql.jdbc.Driver','jdbc:mysql://localhost:3306/test')

注:xxxxxxxx是数据库密码,由创建数据库时自己设置
若出现错误:‘The server time zone value ‘XXXXXX’ is unrecognized or represents…’,这是由于mysql和系统的时区差异造成,如下图所示:
在这里插入图片描述
解决方法
以管理员方式打开cmd,
输入:
mysql -u root -p
xxxxxxxx
show variables like ‘%time_zone%’;别漏了后面分号
set global time_zone=’+8:00’;别漏了后面的分号
即可,在命令行出现:
在这里插入图片描述
证明连接成功
2)查询表
我的表名是student

curs=exec(conn,'select * from student')%where age = 23
cur=fetch(curs)
data=cur.Data

能将数据显示出来
3)表中插入数据

fastinsert(conn,'student',{'name','age'},{'李四',22})

4)更新信息

update(conn,'student',{'name','age'},{'张三',26},'where age=20')%20改为26

另外,利用matlab语句新建表、删除数据等操作,我没有查到相关资料出来,还需大神不吝赐教!

猜你喜欢

转载自blog.csdn.net/xue_csdn/article/details/90702053