1

これが私のコードです:

     conn.Open();
     string sql = "select min(IMG_ID) from IMGDETAIL where PRO_ID = @id";
     cmd = new SqlCommand(sql, conn);
     cmd.Parameters.Add(new SqlParameter("@id", nailId));
     da = new SqlDataAdapter(cmd);
     da.Fill(dt);    
     if (dt.Rows.Count > 0)
      {
        foreach (DataRow row in dt.Rows)
        {
          id = int.Parse(row["IMG_ID"].ToString());                      
        }
      }

id 列を取得しようとすると、テーブルに列がないというエラーが表示されますが、IMG_ID既にこの列があることを確認します。

誰かが何が悪いのか教えてもらえますか?

4

3 に答える 3

1

IMG_ID列はありませんが、 MIN(IMG_ID). ASのような名前を付けるために使用します。

string sql = "select min(IMG_ID) AS IMG_ID from IMGDETAIL where PRO_ID = @id";
于 2013-03-13T15:24:29.570 に答える
1

以下を試してください - MIN(...) は列に MIN の内容と同じ名前を付けません。

string sql = "select min(IMG_ID) AS IMG_ID from IMGDETAIL where PRO_ID = @id";

于 2013-03-13T15:23:04.587 に答える
0

クエリは名前のない列を作成するため、このエラーを回避するにはクエリを修正してください。次のようにする必要があります。

select min(IMG_ID) as IMG_ID  from IMGDETAIL where PRO_ID = @id

これを使用すると、列に IMG_ID という名前が付けられます

于 2013-03-13T15:22:56.663 に答える