2016-11-25 27 views
0
using System; 

using System.Collections.Generic; 

using System.Text; 

using System.Data.SqlServerCe; 



namespace ExportSDF 

{ 

class Program 

{ 

static void Main(string[] args) 

{ 

SqlCeConnection conn = null; 

SqlCeCommand cmd = null; 

SqlCeDataReader rdr = null; 

try 

{ 

conn = new SqlCeConnection(@"Data Source = C:\Program Files\Microsoft SQL Server Compact Edition\v3.1\SDK\Samples\Northwind.sdf;max database size=256"); 

conn.Open(); 

cmd = new SqlCeCommand("SELECT * FROM Customers", conn); 

rdr = cmd.ExecuteReader(); 

System.IO.TextWriter stm = new System.IO.StreamWriter(new System.IO.FileStream(@"C:\customers.csv", System.IO.FileMode.Create), Encoding.Default); 

while (rdr.Read()) 

{ 

for (int i = 0; i < rdr.FieldCount-2; i++) 

{ 

if (rdr[i] != null) 

{ 

stm.Write(rdr[i].ToString()); 

stm.Write(";"); 

} 

else 

{ 

stm.Write(";"); 

} 

} 

if (rdr[rdr.FieldCount-1] != null) 

{ 

stm.Write(rdr[0].ToString()); 

} 

stm.Write(System.Environment.NewLine); 

} 


stm.Close(); 

rdr.Close(); 

cmd.Dispose(); 

} 

finally 

{ 

// Close the connection when no longer needed 

// 

conn.Close(); 

} 

} 

} 

} 

このプログラムは動作しません。すべてのテーブルをまとめてcsv file.iに変換するコードまたはアプリケーションを手伝ってください一度に1つのテーブルだけを変換するアプリケーション.iは複数のテーブルを選択できません。SDFファイルからすべてのテーブルをCSVファイルに変換する方法を教えてください。

答えて

0

私が見るところでは、コードはhereです。 どうしたらうまくいかないのでしょうか?これまでに何を試しましたか? コードはコピーされただけですが、データソースは変更されていないようですが、明らかに機能しません。

ありがとうございました。

+0

私はデータソースを変更しました。問題は、テーブルヘッダーと[LumId] VARBINARY(16)NOT NULL型の列がSystem.Byte []のように表示されることです。 –

関連する問題