Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để kết nối với Microsoft SQL Server 2008 (MSSQL) từ Matlab?

Tôi trình bày dưới đây một đánh giá về các cách tiếp cận khác nhau để truy cập cơ sở dữ liệu trong MATLAB. Dưới đây là danh sách các câu hỏi về Stack Overflow trong đó một số câu hỏi đã được thảo luận:

Java

MATLAB có Java JVM được nhúng, cho phép bạn gọi trực tiếp Trình điều khiển JDBC từ MATLAB. Trước tiên, bạn cần cung cấp chúng trên Java classpth trong 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();

Hộp công cụ cơ sở dữ liệu

Nếu bạn có quyền truy cập vào Hộp công cụ cơ sở dữ liệu , nó có thể đơn giản hóa những điều trên vì nó hoạt động như một trình bao bọc xung quanh nội dung 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)

Bạn cũng có thể truy cập cơ sở dữ liệu thông qua ODBC. Trước tiên, hãy tạo một DSN tới Máy chủ MSSQL (Control Panel > ODBC Data Sources ), sau đó sử dụng nó từ Hộp công cụ cơ sở dữ liệu:

conn = database('myDB', '', '');    %# User/System DSN
%...
close(conn)

COM

Bạn có thể sử dụng trực tiếp thành phần ADO OLEDB từ MATLAB. Một cách là chỉ định một chuỗi kết nối (không có DNS):

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()

.NET

Cuối cùng, các phiên bản gần đây của MATLAB đã thêm khả năng gọi .NET từ MATLAB . Vì vậy, bạn có thể sử dụng các nhà cung cấp dữ liệu 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()



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố với chức năng cửa sổ trong SQL Server 2008 R2

  2. Kết hợp hai bảng không có trường chung

  3. Chuyển danh sách <> sang thủ tục lưu trữ SQL

  4. GETDATE () Ví dụ trong SQL Server (T-SQL)

  5. Cách tìm vị trí của tệp dữ liệu và tệp nhật ký trong SQL Server