0
string query = @"select p.package_id, pd.download_id
                     from Tools.ftp.package p
                     join Tools.ftp.package_download pd 
                     on p.package_id = pd.package_id
                     where p.package_name = 'foo'";

SqlConnection クラスを使用して C# で SQL Server からデータを取得しようとすると、where ステートメントを使用せずに出力が得られますが、空白のファイルが残っており、より複雑な結合で奇妙な動作が発生します。何故ですか。C# でクエリを作成するときの動作に注意することはありますか。つまり、書式設定の問題などです。

これがすべてです。

StreamWriter fileout = new StreamWriter(@"C:\test\output9.csv");

    string myConnectionString = @"Data Source=foobar;Initial Catalog=DB;User id=user;Password=pw";
    SqlConnection Conn = new SqlConnection(myConnectionString);


    string query = @"select p.package_id, pd.download_id
                 from Tools.ftp.package p
                 join Tools.ftp.package_download pd 
                 on p.package_id = pd.package_id
                 where p.package_name = 'foo'";

    SqlCommand cmd = new SqlCommand(query, Conn);
    cmd.Connection = Conn;
    Conn.Open();

    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();

    da.Fill(dt);
    Conn.Close();
    da.Dispose();


    foreach (DataRow dataRow in dt.Rows)
    {
        foreach (var item in dataRow.ItemArray)
        {
            fileout.Write(item+ ",");
        }
        fileout.Write("\n");
    }
    fileout.Close();
4

1 に答える 1