vb.net - VB.Net - 无法启用约束。一行或多行包含违反非空、唯一或外键约束的值
问题描述
我正在使用 VB.Net 创建图书馆自动化系统。在图书添加表单(UI)中,我想添加图书作者(tblBookDetails 中的一个字段。但添加图书作者是另一个 UI。要在图书添加 UI 中添加图书作者,我有一个组合框来填充除authorFirstName
值成员之外的所有内容是authorID
。我想从 BookAuthor 表中填充图书作者姓名。运行时出现以下错误Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.
tblBookAuthor 和 tblBookDetails 模式
tblBookAuthor(authorID, authorFirstName) // authorID - PK
tblBookDetails(accessionNo, authorId, title) // authorID - FK
这是我的代码
Private Sub frmAddBook_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SqlDataAdapter1.Fill(DataSet51, "tblBookAuthor") // Highlighted as error
dt = DataSet51.Tables("tblBookAuthor")
End Sub
更新
作者姓名的 getId 附加代码
Private Sub cboBookAuthor_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbAuthorId.SelectedIndexChanged
Dim i As Integer
For i = 0 To DataSet51.Tables("tblBookAuthor").Rows.Count - 1
If cboBookAuthor.Text = DataSet51.Tables("tblBookAuthor").Rows(i).Item(1) Then
txtBookAuthorID.Text = DataSet51.Tables("tblBookAuthor").Rows(i).Item(0)
Exit For
End If
Next
End Sub
解决方案
推荐阅读
- ajax - 如何使用 AJAX 结果更新 Master detail razor 页面中的模型
- sql - PostgreSQL 计算子查询中的行数
- android - 仅在需要时调整文本视图文本大小以适合文本视图大小
- node.js - 在使用 MessageCollector 达到设置的时间限制后如何触发代码?
- php - 来自popen的PHP pid
- firebase - 由于我的应用程序使用密码身份验证,因此上面的代码将在该字段中给我 null
- azure - 如何在 Azure 托管应用程序 ARM 部署中强制选择服务主体
- c# - 如何仅获取 C# 中两个 DateTimeOffset 之间的时间差,而忽略日期差?
- c++ - std::mutex 的 constexpr 构造函数是如何实现的?
- firebase - Firebase 身份验证 Google 登录以仅允许特定的 google 工作区帐户