2

MATLAB を使用して .net を介して SQL テーブルから特定の行を読み取ろうとしています。私はそれに次のコードを使用しています

import System.Data.SqlClient.*   
import DataTable.*  
NET.addAssembly('System.Data');  
sqlconn = System.Data.SqlClient.SqlConnection();  
sqlcmd = sqlconn.CreateCommand();      
conn = SqlConnection('Data Source=B39Q5M1;Initial Catalog=AIR;integrated  
i=1;  
list = [];  
conn.Open();  
q = SqlCommand(sqlstring, conn);   
r = q.ExecuteReader();  
while (r.read())  
r.GetString(0)  
end  
end

ただし、これは行から単一の要素をフェッチします。少なくともこの場合、各要素を取得して配列にする回避策があります。しかし、より大きな問題は、テーブルの値が int/string かどうかわからないことです。この場合、やみくもに Getstring coz を使用することはできません。値が文字列ではなく int の場合、エラーがスローされます。完全な行を取得する方法があれば教えてください。または、これに対する回避策はありますか?サイトをたくさん検索しましたが、すべての例で GetString(0) を使用しています。前もって感謝します!

4

1 に答える 1

0

次のようにもう少しフォーマットしていただけますか: http ://support.winhost.com/KB/a647/how-to-query-an-sql-database-with-net-sql-data-provider.aspx

使用するSQLステートメントを作成するためのより簡単な方法があるはずです。

http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx これはC#のdatatableのライブラリであり、すべてのgetコマンドとtableコマンドがここにあり、データベースからデータを確実に取得できます。 StringまたはIntであるかどうか。

GETROWTYPE()は型を取得するメソッドのようです。主な問題にどのように取り組むかがわかるまで、これを使用してGetStringを使用する必要があるかどうかを判断できます。

于 2012-11-13T23:42:54.543 に答える