我正在使用MySQL和Matlab进行一些数据分析。如果已存在现有数据库,我的程序可以正常工作。但是当我没有尝试创建连接的数据库时,它不起作用。现在,我想要做的是如果该名称中没有数据库,则创建一个具有固定名称的数据库。我搜索了整个互联网,并没有找到任何选择。可能是我遗失了一些东西。
此外,我想在新创建的数据库上创建一个表,并在其上存储一些随机数据。我能做到这一点。但是我被困在第一部分,即使用matlab以编程方式创建数据库。
请注意,我必须只使用matlab进行此项目。非常感谢任何合作。
更新
代码示例如下 -
%findIfFeederExists Summary of this function goes here
% finds whether there is no. of feeders are empty or not
% Detailed explanation goes here
%Set preferences with setdbprefs.
setdbprefs('DataReturnFormat', 'dataset');
setdbprefs('NullNumberRead', 'NaN');
setdbprefs('NullStringRead', 'null');
%Make connection to database. Note that the password has been omitted.
%Using ODBC driver.
conn = database('wisedb', 'root', '');
conn.Message;
%Read data from database.
sqlQuery = 'SELECT * FROM joined_table';
%sqlQuery = 'SELECT * FROM joined_table where joined_table.`N. of Feeder` > 0';
curs = exec(conn, sqlQuery);
curs = fetch(curs);
dbMatrix = curs.data;
[row_count, ~] = size(dbMatrix);
if (row_count >= id)
val = dbMatrix(id, 3);
disp(val);
if (val.N0x2EOfFeeder > 0)
Str = strcat('Feeder is present on the id : ', num2str(id));
disp(Str);
disp(dbMatrix(id, 1:end));
else
Str = strcat('Feeder is NOT present on the id : ', num2str(id));
disp(Str);
end
else
Str = strcat('No row found for id : ', num2str(id));
disp(Str);
end
% = exec(conn,'SELECT * FROM inventoryTable');
close(curs);
%Assign data to output variable
%Close database connection.
close(conn);
%Clear variables
clear curs conn
end
您可以看到我可以使用ODBC连接到现有数据库。但我不确定如何创建新数据库。可以做些什么?