Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.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
VB.net sql表未显示最后一行_Sql_Vb.net_Sql Server Ce 3.5 - Fatal编程技术网

VB.net sql表未显示最后一行

VB.net sql表未显示最后一行,sql,vb.net,sql-server-ce-3.5,Sql,Vb.net,Sql Server Ce 3.5,我在做什么- 从excel工作表将406行导入5个sql表 导入后,我手动将数据逐个保存到5个 按钮单击事件上的表并在datagridview上显示 保存每条记录后,我将刷新datagridview 我的问题- 记录已正确保存,但datagridview仅显示 408条记录,其中实际记录数为412条 同时从服务器资源管理器查看时,仅显示408条记录 显示 但是表属性显示有412行 这个问题只与第一个表有关 我的代码:- cmd.CommandText = String.Empty

我在做什么-

  • 从excel工作表将406行导入5个sql表
  • 导入后,我手动将数据逐个保存到5个 按钮单击事件上的表并在datagridview上显示
  • 保存每条记录后,我将刷新datagridview
  • 我的问题-

  • 记录已正确保存,但datagridview仅显示 408条记录,其中实际记录数为412条
  • 同时从服务器资源管理器查看时,仅显示408条记录 显示
  • 但是表属性显示有412行
  • 这个问题只与第一个表有关
  • 我的代码:-

    cmd.CommandText = String.Empty
            cmd.Parameters.Clear()
            cmd.CommandText = "INSERT into pd([Adm No],[DOA],[Name],[Course],[Fees Due],[Concession],[Contact No 1]," & _
                             "[Contact No 2],[E-Mail],[Year of Passing],[Address],[DOB],[College])" & _
                             " values(@admno,@doa,@name,@course,@totalfees,@concession,@contactno1,@contactno2,@email,@yop," & _
                             "@address,@dob,@college)"
            cmd.Parameters.AddWithValue("@admno", i.ToString)
            cmd.Parameters.AddWithValue("@doa", date_format.format_date(doa.Value.Date))
            cmd.Parameters.AddWithValue("@name", txt_name.Text)
            cmd.Parameters.AddWithValue("@course", combo_course.SelectedItem.ToString)
            cmd.Parameters.AddWithValue("@totalfees", txt_totalfees.Text)
            cmd.Parameters.AddWithValue("@concession", txt_concession.Text)
            cmd.Parameters.AddWithValue("@contactno1", txt_contact1.Text)
            cmd.Parameters.AddWithValue("@contactno2", txt_contact2.Text)
            cmd.Parameters.AddWithValue("@email", txt_email.Text)
            cmd.Parameters.AddWithValue("@yop", txt_yop.Text)
            cmd.Parameters.AddWithValue("@address", txt_address.Text)
            cmd.Parameters.AddWithValue("@dob", date_format.format_date(dob.Value.Date))
            cmd.Parameters.AddWithValue("@college", txt_college.Text)
            If con.State = ConnectionState.Closed Then
                con.Open()
            End If
            cmd.Connection = con
            cmd.ExecuteNonQuery()
    
            'save fees details
            cmd.CommandText = String.Empty
            cmd.Parameters.Clear()
            cmd.CommandText = "INSERT into fees([Adm No],[Name],[Fees Due],[Fees Paid],[No of Installments]," & _
                              "[Installment Amounts],[Receipt Nos],[Dates of Transaction],[Mode],[Bank],[Due Date]" & _
                              ",[Total Fees],[Concession],[Cheque No],[Course])" & _
                              " values(@admno,@name,@feesdue,@feespaid,@noi,@instamnt,@rcno,@dot,@mode,@bank,@dd," & _
                              "@total,@concession,@chqno,@course)"
            cmd.Parameters.AddWithValue("@admno", i.ToString)
            cmd.Parameters.AddWithValue("@name", txt_name.Text)
            cmd.Parameters.AddWithValue("@feesdue", (CInt(txt_totalfees.Text) - CInt(txt_concession.Text)))
            cmd.Parameters.AddWithValue("@feespaid", CInt(0))
            cmd.Parameters.AddWithValue("@noi", CInt(0))
            cmd.Parameters.AddWithValue("@instamnt", "")
            cmd.Parameters.AddWithValue("@rcno", "")
            cmd.Parameters.AddWithValue("@dot", "")
            cmd.Parameters.AddWithValue("@mode", "")
            cmd.Parameters.AddWithValue("@bank", "")
            cmd.Parameters.AddWithValue("@dd", "")
            cmd.Parameters.AddWithValue("@total", CInt(txt_totalfees.Text))
            cmd.Parameters.AddWithValue("@concession", txt_concession.Text)
            cmd.Parameters.AddWithValue("@chqno", "")
            cmd.Parameters.AddWithValue("@course", combo_course.SelectedItem.ToString)
            If con.State = ConnectionState.Closed Then
                con.Open()
            End If
            cmd.Connection = con
            cmd.ExecuteNonQuery()
    
            'save photo
            If Not PictureBox1.Image Is Nothing Then
                cmd.CommandText = String.Empty
                cmd.Parameters.Clear()
                cmd.CommandText = "Insert into img values(@adm,@name,@imge)"
                Dim para As New SqlCeParameter("imge", SqlDbType.Image)
    
                Dim ms As New MemoryStream
                PictureBox1.BackgroundImage.Save(ms, PictureBox1.BackgroundImage.RawFormat)
                Dim data As Byte() = ms.GetBuffer
                para.Value = data
                cmd.Parameters.AddWithValue("@adm", lb_admno.Text)
                cmd.Parameters.AddWithValue("@name", txt_name.Text)
                cmd.Parameters.Add(para)
                If con.State = ConnectionState.Closed Then
                    con.Open()
                End If
                cmd.Connection = con
                cmd.ExecuteNonQuery()
            Else
                cmd.CommandText = String.Empty
                cmd.Parameters.Clear()
                cmd.CommandText = "Insert into img values(@adm,@name,@imge)"
                Dim para As New SqlCeParameter("imge", SqlDbType.Image)
    
                Dim ms As New MemoryStream
                PictureBox1.BackgroundImage.Save(ms, PictureBox1.BackgroundImage.RawFormat)
                Dim data As Byte() = ms.GetBuffer
                para.Value = data
                cmd.Parameters.AddWithValue("@adm", lb_admno.Text)
                cmd.Parameters.AddWithValue("@name", txt_name.Text)
                cmd.Parameters.Add(para)
                If con.State = ConnectionState.Closed Then
                    con.Open()
                End If
                cmd.Connection = con
                cmd.ExecuteNonQuery()
            End If
    
            cmd.CommandText = String.Empty
            cmd.Parameters.Clear()
            cmd.CommandText = "insert into attend values(@adm,@name,@course,@dt,@stat)"
            cmd.Parameters.AddWithValue("@adm", lb_admno.Text)
            cmd.Parameters.AddWithValue("@name", txt_name.Text)
            cmd.Parameters.AddWithValue("@course", combo_course.SelectedItem.ToString)
            cmd.Parameters.AddWithValue("@dt", "")
            cmd.Parameters.AddWithValue("@stat", "")
            If con.State = ConnectionState.Closed Then
                con.Open()
            End If
            cmd.Connection = con
            cmd.ExecuteNonQuery()
    
    
            cmd.CommandText = String.Empty
            cmd.Parameters.Clear()
            cmd.CommandText = "insert into testdb values(@adm,@name,@course,@tname,@tdate,@marksob,@marksout)"
            cmd.Parameters.AddWithValue("@adm", lb_admno.Text)
            cmd.Parameters.AddWithValue("@name", txt_name.Text)
            cmd.Parameters.AddWithValue("@course", combo_course.SelectedItem.ToString)
            cmd.Parameters.AddWithValue("@tname", "")
            cmd.Parameters.AddWithValue("@tdate", "")
            cmd.Parameters.AddWithValue("@marksob", "")
            cmd.Parameters.AddWithValue("@marksout", "")
            If con.State = ConnectionState.Closed Then
                con.Open()
            End If
            cmd.Connection = con
            cmd.ExecuteNonQuery()
    

    问题在于导入记录的代码。我正在读取excel文件的单元格,并将它们插入五个表中

    只有当我逐个导入所有五个表中的记录时,问题才会出现,但如果我只将记录导入三个表中,那么问题就不会出现


    这解决了我的问题,但我碰巧不知道背后的真正原因。为什么我不能将记录一个接一个地导入到五个表中?如果有人发现错误背后的原因,请发表评论。

    什么是
    sql表
    <代码>sql不是RDBMS。你使用的是哪种RDBMS?它是微软SQL Server Cype 3.5数据库,其中有5个表要考虑-双检查实际行计数,是否有任何重复,只增加一次,是否有任何损坏的数据不能被添加,等等。不,没有损坏的数据。表中显示了所有导入的行,只有当我尝试手动添加记录时才会出现问题。嗨,史蒂夫,你能稍微澄清一下这个问题吗。不清楚你在问什么。例如,导入406行,datagridview仅显示408条记录,其中实际记录数为412条。但是表属性显示有412行。这个问题只出现在第一个表中。我们无法确定实际值与您的期望值。祝你好运