मैं नीचे MATLAB में डेटाबेस तक पहुँचने के लिए विभिन्न दृष्टिकोणों की समीक्षा प्रस्तुत करता हूं। यहां स्टैक ओवरफ़्लो प्रश्नों की एक सूची दी गई है, जिनमें से कुछ पर चर्चा की गई थी:
- मैं matlab से एक postgresql डेटाबेस को बिना matlabs डेटाबेस टूलबॉक्स के कैसे एक्सेस कर सकता हूँ?
- MATLAB 7.0 और MYSQL का कनेक्शन
- MATLAB SQL सर्वर से संपर्क करें
- Matlab के साथ एक्सेस डेटाबेस टेबल के नाम प्राप्त करना
- MATLAB से ADO.NET को आमंत्रित करना
जावा
MATLAB में एक एम्बेडेड जावा JVM है, जिससे आप सीधे पर कॉल कर सकते हैं। JDBC ड्राइवर MATLAB से। आपको पहले उन्हें जावा वर्गपथ MATLAB में:
javaclasspath('sqljdbc4.jar');
%# load driver and create connection
driver = com.microsoft.sqlserver.jdbc.SQLServerDriver;
conn = driver.connect('jdbc:sqlserver://<HOST>:<PORT>;databaseName=<DB>');
%# query database
q = conn.prepareStatement('select * from <TABLE>');
rs = q.executeQuery();
while rs.next()
char(rs.getString(0))
end
rs.close();
conn.close();
डेटाबेस टूलबॉक्स
अगर आपके पास डेटाबेस टूलबॉक्स तक पहुंच है , यह उपरोक्त को सरल बना सकता है क्योंकि यह JDBC/ODBC सामग्री के चारों ओर एक आवरण के रूप में कार्य करता है:
conn = database('<DB>', '<USER>','<PASS>', ...
'com.microsoft.sqlserver.jdbc.SQLServerDriver', ...
'jdbc:sqlserver://<HOST>:<PORT>;database=<DB>');
curs = exec(conn, 'select * from <TABLE>');
curs = fetch(curs);
curs.Data
close(curs)
close(conn)
आप ODBC के माध्यम से भी डेटाबेस तक पहुँच सकते हैं। पहले MSSQL सर्वर के लिए एक DSN बनाएं (Control Panel > ODBC Data Sources
), फिर डेटाबेस टूलबॉक्स से इसका उपयोग करें:
conn = database('myDB', '', ''); %# User/System DSN
%...
close(conn)
COM
आप सीधे MATLAB से ADO OLEDB घटक का उपयोग कर सकते हैं। कनेक्शन स्ट्रिंग (डीएनएस-रहित) निर्दिष्ट करने का एक तरीका है:
conn = actxserver('ADODB.Connection');
conn.Open('Provider=sqloledb;Data Source=<HOST>;Initial Catalog=<DB>;User Id=<USER>;Password=<PASS>;');
conn.Execute('select * from <TABLE>').GetRows
conn.Close()
.नेट
अंत में, MATLAB के हाल के संस्करणों ने कॉल करने की क्षमता जोड़ी है। MATLAB से .NET . तो आप ADO.NET डेटा प्रदाताओं का उपयोग कर सकते हैं:
import System.Data.SqlClient.*
NET.addAssembly('System.Data');
conn = SqlConnection('Data Source=<HOST>;Initial Catalog=<DB>');
conn.Open();
q = SqlCommand('select * from <TABLE>', conn);
r = q.ExecuteReader();
while r.Read()
char(r.GetString(0))
end
r.Close()
conn.Close()