2012-05-06 10 views
1

nullではないXLSファイルから選択し、問題なしXLSファイルからデータを読み込みながら行が

OleDbCommand cmd = new OleDbCommand("SELECT * FROM [" + fileID + "]", oledbConn); 
DataSet ds = new DataSet(); 
OleDbDataAdapter da = new OleDbDataAdapter(cmd); 
da.Fill(ds); 

で次のようにoldedb使用しかし、私はその特定の列の唯一の選択行にselect文を拡張したいですnullではありませんWHERE ... NULLではありません、どういうことでしょうか?

答えて

3

接続文字列 にオプションHDR=YESを使用する場合は、WHERE句の列タイトルを使用して列を指定します。 そうでない場合は、F1...FNを使用して列を指定します。

選択HDR=NOのクエリ(最初の列):HDR=YESため

SELECT * FROM [" + fileID + "] WHERE [F1] IS NOT NULL 

選択クエリ:

SELECT * FROM [" + fileID + "] WHERE [YourColumnTitle] IS NOT NULL 
+0

は大きな感謝を作品。私はHDR = YESとTitle of Columnを使用しました。ちょっとした質問ですが、HDR = YESを使用しても、まだいくつかのタイプのインデックスを使用して、列の名前ではなく列番号を指定できますか? – Karaman

+0

@ Karaman:これは、COLUMN_NAMEとORDINAL_POSITIONのスキーマテーブル(GetOleDbSchemaTable()を使用)を照会することで実現できます。 – Hans

関連する問題