none
有關dataadapter的問題 RRS feed

  • 問題

  • 請教一下各位先進

    Dim strconn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\test.mdb;User Id=admin;Password=;"
            Dim objconn As OleDbConnection = New OleDbConnection(strconn)
            Dim strsql As String = "select * from userdata"'<---理面資料超過10筆
            Dim dap As OleDbDataAdapter = New OleDbDataAdapter(strsql, objconn)
            Dim ds As New DataSet
            dap.Fill(ds, 0, 5, "p1")
            dap.Fill(ds, 6, 10, "p2")
            Me.DataGridView1.DataSource = ds.Tables("p1")
            Me.DataGridView2.DataSource = ds.Tables("p2") '<-----沒有顯示資料

     請問是不是dataadapter 只能fill 一次 ?
    要用p2這個datatable的話 又要再從寫一次? 有更好的辦法嗎?

    還是只能寫個function 把開始跟結束的比數設定成變數 再回傳出 datatable
    就像下面
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.DataGridView1.DataSource = getdt(0, 5, "p1")
            Me.DataGridView2.DataSource = getdt(6, 10, "p2")
        End Sub

        Function getdt(ByVal x As Integer, ByVal y As Integer, ByVal pn As String) As DataTable
            Dim strconn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\test.mdb;User Id=admin;Password=;"
            Dim objconn As OleDbConnection = New OleDbConnection(strconn)
            Dim strsql As String = "select * from userdata"
            Dim dap As OleDbDataAdapter = New OleDbDataAdapter(strsql, objconn)
            Dim ds As New DataSet
            dap.Fill(ds, x, y, pn)
            Return ds.Tables(0)
        End Function

    用dataview的RowFilter 雖然可以重複使用 但第一次也要全抓資料 小弟剛學winform還請各位大大不吝指教

    • 已移動 璉璉 2009年3月21日 上午 05:41 (由 Visual Studio一般討論區(General) 移動至 資料存取(ADO.NET與LINQ))
    2009年3月5日 上午 05:44

解答

所有回覆