首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C# 連接 SQL Server 執行無誤但 DataGridView 無資料的排查步驟

     編輯:程式設計綜合問答

現象描述

程式碼執行無例外,但 DataGridView 顯示空白,無任何資料列。

string conn = "Server=.;Database=13rj;Trusted_Connection=SSPI";
string sql = "select * from 13rj_basic";
SqlConnection myconn = new SqlConnection(conn);
myconn.Open();
SqlDataAdapter myda = new SqlDataAdapter(sql, conn);
DataSet myds = new DataSet();
myda.Fill(myds, "13rj_basic");
dataGridView1.DataSource = myds.Tables["13rj_basic"];

常見原因與檢查清單

  1. 連接字串錯誤:確認 Server、Database、認證方式(Trusted_Connection 或 User Id/Password)正確。
  2. 資料表名稱拼寫:SQL Server 資料表名稱區分大小寫?實際資料表是否為 13rj_basic?
  3. 權限問題:登入帳號是否有該資料表的 SELECT 權限。
  4. 資料為空:在 SSMS 執行相同 SQL 確認是否有回傳列。
  5. DataGridView 綁定時機:確保 Fill 完成後再設定 DataSource,且不在背景執行緒操作 UI。

建議除錯步驟

try {
    myconn.Open();
    int rows = myda.Fill(myds, "13rj_basic");
    Console.WriteLine($"實際填入列數: {rows}");
    if (rows > 0) {
        dataGridView1.DataSource = myds.Tables["13rj_basic"];
    } else {
        MessageBox.Show("查詢無資料");
    }
} catch (Exception ex) {
    MessageBox.Show("錯誤: " + ex.Message);
} finally {
    myconn.Close();
}

若 rows 為 0,請在資料庫管理工具直接執行 SQL 驗證。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved