-1

我已经非常关注 MSDN 上的文章 http://msdn.microsoft.com/en-us/library/5ycd1034.aspx向表中添加新行。这是我的实现,我只包含了相关部分:

        this.booksTableAdapter.ClearBeforeFill = true;

        DataRow row = core.Tables["books"].NewRow();

        row[0] = 1234567;               //primary key
        row[3] = book_name;             //string

        //add
        core.Tables["books"].Rows.Add(row);
        //update
        booksTableAdapter.Update(core); //generates error

执行时,我得到“[ODBC Microsoft Access Driver]:索引或主键不能包含 Null 值”,尽管明确设置了主键。如果我不设置主键,错误是一样的。我一直认为无论我的代码如何,Access 都会自动生成一个主键。我该如何解决这个错误?感谢您的任何回复。

4

1 回答 1

-1

感谢您的迅速回复。有多个主键(错误创建)。我删除了不必要的第二个 pk,它工作正常。

于 2013-09-27T11:46:02.960 回答