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

C# OleDbException:主鍵/索引不能包含 Null 值的根因與解決

     編輯:程式設計綜合問答

錯誤信息

System.Data.OleDb.OleDbException: 索引或主關鍵字不能包含一個 空 (Null) 值

常見原因

  1. 主鍵列未賦值:Access 表定義 ID 為主鍵/自增,但插入語句未包含該列,且未設置 IDENTITY_INSERT 等效屬性。
  2. 唯一索引列傳入 Null:參數化查詢中對應參數為 null / DBNull.Value。
  3. 數據類型不匹配:如文本字段傳入空字符串 "" 被驅動程序轉為 Null。

排查清單

  • 檢查 INSERT 語句列名與 Parameters 集合一一對應。
  • 調試輸出每個參數的 Value 確認非 Null。
  • Access 中打開表設計視圖,確認「必填」屬性與主鍵設置。

參考資料

Access 主鍵 Null 異常詳細解析

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