【发布时间】:2019-06-07 18:39:12
【问题描述】:
在 VB.NET 中是否可以在 DataGridView 中进行分页? 我已经成功连接到数据库并且能够将数据导入 DataGrid,但问题是我拥有的表很大,有超过 1000 万行。因此,在一个视图中全部显示要么会减慢加载时间,要么如果我选择添加更多数据列,应用程序将出现错误。
例如,这条线可以工作
cmd.CommandText = "SELECT primaryTitle, startYear, runtimeMinutes, genres, FROM Basics"
但是这一行会抛出一个名为 System.OutOfMemoryException 的错误
cmd.CommandText = "SELECT primaryTitle, startYear, runtimeMinutes, genres, directors, writers FROM Basics, Crew"
任何帮助将不胜感激。
这是我当前的代码。我唯一做的就是将数据导入 DataGridView,因为我不能再继续了。
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim con As New SqlClient.SqlConnection
con.ConnectionString = "Data Source=DESKTOP-7SOUE1N\SQLEXPRESS;Initial Catalog=IMDb MOVIE DATABASE SYSTEM;Integrated Security=True"
con.Open()
Dim cmd As New SqlClient.SqlCommand
cmd.Connection = con
cmd.CommandText = "SELECT primaryTitle, startYear, runtimeMinutes, genres, directors, writers FROM Basics, Crew"
Dim rdr As SqlClient.SqlDataReader = cmd.ExecuteReader
Dim dt As New DataTable
dt.Load(rdr)
rdr.Close()
DataGridView1.DataSource = dt
con.Close()
End Sub
End Class
【问题讨论】:
-
是将其导入数据表进行管理是一种选择,还是需要在 SQL 级别进行?
-
将其导入 datagridview 不是一种选择,问题要求我在启动时在表和列视图中列出所有内容。
-
你可能想看看VirtualMode
标签: vb.net datagridview