Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 更新数据库时出现问题_Database_Vb.net_Dataset - Fatal编程技术网

Database 更新数据库时出现问题

Database 更新数据库时出现问题,database,vb.net,dataset,Database,Vb.net,Dataset,我附上代码以供参考。我正在尝试为我的项目详细信息创建数据库。我目前有两份表格: 主要形式 项目详情表 用于切换各种窗体的主窗体 项目详细信息表单用于添加/编辑/加载项目详细信息 我在VisualBasic中的主要表单如下所示 Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load End Sub Private Sub Bt_Proj

我附上代码以供参考。我正在尝试为我的项目详细信息创建数据库。我目前有两份表格:

  • 主要形式
  • 项目详情表
  • 用于切换各种窗体的主窗体

    项目详细信息表单用于添加/编辑/加载项目详细信息

    我在VisualBasic中的主要表单如下所示

    Public Class Form1
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        End Sub
    
        Private Sub Bt_Project_Details_Click(sender As Object, e As EventArgs) Handles Bt_Project_Details.Click
            Me.Hide()
            Project_Details_Form.Show()
        End Sub
    End Class
    
    Public Class Project_Details_Form
    
        Private Sub Project_Details_Form_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            'TODO: This line of code loads data into the 'Project_Data_Set.Project_Data_Table' table. You can move, or remove it, as needed.
            Me.Project_Data_TableTableAdapter.Fill(Me.Project_Data_Set.Project_Data_Table)
        End Sub
    
        Private Sub Bt_Load_Project_Click(sender As Object, e As EventArgs) Handles Bt_Load_Project.Click
        End Sub
    
        Private Sub Bt_Cancel_Click(sender As Object, e As EventArgs) Handles Bt_Cancel.Click
            Me.Hide()
            Form1.Show()
        End Sub
    
        Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
            Project_Data_TableBindingSource.AddNew()
        End Sub
    
        Private Sub Project_Data_TableBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles Project_Data_TableBindingNavigatorSaveItem.Click
            Me.Validate()
            Me.Project_Data_TableBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.Project_Data_Set)
        End Sub
    
        Private Sub BindingNavigatorDeleteItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorDeleteItem.Click
            Project_Data_TableBindingSource.RemoveCurrent()
        End Sub
    
        Private Sub FillByToolStripButton_Click(sender As Object, e As EventArgs)
            Try
                Me.Project_Data_TableTableAdapter.FillBy(Me.Project_Data_Set.Project_Data_Table)
            Catch ex As System.Exception
                System.Windows.Forms.MessageBox.Show(ex.Message)
            End Try
    
        End Sub
    End Class
    
    我的项目详细信息表单如下所示

    Public Class Form1
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        End Sub
    
        Private Sub Bt_Project_Details_Click(sender As Object, e As EventArgs) Handles Bt_Project_Details.Click
            Me.Hide()
            Project_Details_Form.Show()
        End Sub
    End Class
    
    Public Class Project_Details_Form
    
        Private Sub Project_Details_Form_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            'TODO: This line of code loads data into the 'Project_Data_Set.Project_Data_Table' table. You can move, or remove it, as needed.
            Me.Project_Data_TableTableAdapter.Fill(Me.Project_Data_Set.Project_Data_Table)
        End Sub
    
        Private Sub Bt_Load_Project_Click(sender As Object, e As EventArgs) Handles Bt_Load_Project.Click
        End Sub
    
        Private Sub Bt_Cancel_Click(sender As Object, e As EventArgs) Handles Bt_Cancel.Click
            Me.Hide()
            Form1.Show()
        End Sub
    
        Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
            Project_Data_TableBindingSource.AddNew()
        End Sub
    
        Private Sub Project_Data_TableBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles Project_Data_TableBindingNavigatorSaveItem.Click
            Me.Validate()
            Me.Project_Data_TableBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.Project_Data_Set)
        End Sub
    
        Private Sub BindingNavigatorDeleteItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorDeleteItem.Click
            Project_Data_TableBindingSource.RemoveCurrent()
        End Sub
    
        Private Sub FillByToolStripButton_Click(sender As Object, e As EventArgs)
            Try
                Me.Project_Data_TableTableAdapter.FillBy(Me.Project_Data_Set.Project_Data_Table)
            Catch ex As System.Exception
                System.Windows.Forms.MessageBox.Show(ex.Message)
            End Try
    
        End Sub
    End Class
    
    现在我面临几个问题:

  • 每当我运行程序时,尝试输入保存的第一个条目数据,但值为空。数据将在下次正确存储时输入。如何使我的第一个条目可见

  • 在以下代码中:

    Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
        Project_Data_TableBindingSource.AddNew()
    
    End Sub
    
    我正在使用
    AddNew()
    。这工作正常,但问题是,即使我不输入数据,如日期,名称保持为空,数据记录在他们的立场是存储空只。我想说,如果任何项目数据集是空的,请给出错误消息(因为用户必须输入这些数据)


  • 是否有其他方法可以单独赋值。 像我的项目数据库包含项目名称,客户名称等,如果我说新按钮按下清除所有字段。一旦表单填写完毕,按下保存按钮,记录单个值

    Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
            Project_Data_TableBindingSource.AddNew()
        End Sub
    

    如果您想了解VB(实际上是VB.NET;只是假定Visual Basic是旧的VB6,在.NET之前),为什么要添加VBA标记(一种完全不同的语言)?正确标记你的问题,最好不要在标题中添加(不准确的)编程语言引用。我是初学者。我正在用visual basic编写代码。@varocarbas是什么让你认为我在这里行为不端。我已经发布了我的代码。我希望它确实满足您在
    项目中询问的问题要求\u数据\u表格绑定导航器保存项目\u单击
    子项您需要在保存之前检查是否添加了任何数据。