我想返回datagrid視圖的數據集中表的前5條記錄。以下不起作用。返回數據集中表的前5條記錄
DataGridView.DataSource = DS.Tables("TABLENAME").Select("SELECT TOP 5")
有什麼建議嗎?
使用Visual Studio 2008 - VB.Net
我想返回datagrid視圖的數據集中表的前5條記錄。以下不起作用。返回數據集中表的前5條記錄
DataGridView.DataSource = DS.Tables("TABLENAME").Select("SELECT TOP 5")
有什麼建議嗎?
使用Visual Studio 2008 - VB.Net
如果已填充的數據集,你可以使用LINQ從桌子上取前5行。 (更有效的方法是在數據庫來處理這一點,但是)
Dim rows = DS.Tables("Foo").Rows.Cast(Of DataRow)().Take(5)
如何使用TOP子句。假設您正在使用SQL Server。
即Select top 5 * from SomeTable
如果你正在使用MySQL存在限制clause
如果您使用的是Oracle查找ROWNUM
選擇不一樣,工作,看看在syntax。
你想要做的是用你的表格創建一個視圖,對它進行排序並取前五行。
DataView view = DS.Tables[0];
view.Sort = "myColumn";
//Take first or last 5 rows.
或者當然只是使用一個「從mytable中選擇最佳5x」並將其插入到數據表中。
如果你使用SQL Server 2005或更高版本,您可以使用ROW_NUMBER()函數與數行,然後使用:
DS.Tables("TABLENAME").Select("row_number <= 5")
對LINQ任何良好來源?就像我說的我正在使用後端數據存儲的訪問數據庫,所以如果LINQ是首選的方法,我應該學習。 – JPJedi 2010-03-30 16:19:56
LINQ是* a *方法,並不總是首選方法,但它對於簡化代碼非常有用。我大部分都是C#編碼器,所以我會指出Jon Skeet的「C#深度」一書。缺少這一點,MSDN始終是可靠的。 – 2010-03-30 16:45:00