從數據庫獲取數據很容易,處理數據更容易。若是想要從數據庫獲取只進、只讀的數據流結果集,你可使用 DataReader 執行命令而且檢索它。關於如何使用 DataReader,請參考: 使用 OLE DB 檢索數據 、 使用 SQL Server 檢索數據 。更多關於綁定、瀏覽、或者遠程處理數據查詢結果集的操做,你能夠以下例所示把結果集放到 DataSet 裏。
String SelectCmdString = "select * from customers"; SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(SelectCmdString, myConnection); SqlCommand mySelectCommand = New SqlCommand("select * from customers", myConnection); SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(mySelectCommand);
myDataSet = new DataSet(); mySqlDataAdapter.Fill(myDataSet,"Customers");
foreach (DataRow myDataRow in myDataSet.Tables["Customers"].Rows) { Console.WriteLine(myDataRow["CustomerId"].ToString()); }
public class GettingDataExample { public void Run() { SqlConnection myConnection = new SqlConnection("server=(local);Integrated Security=SSPI;database=northwind"); string selectCmdString = "SELECT * FROM Customers"; // 構建 SqlDataAdapter SqlDataAdapter myDataAdapter1 = new SqlDataAdapter(selectCmdString, myConnection); // 使用 SqlCommand 構建 SqlDataAdapter SqlCommand mySelectCommand = new SqlCommand(selectCmdString, myConnection); SqlDataAdapter myDataAdapter2 = new SqlDataAdapter(mySelectCommand); DataSet myDataSet = new DataSet(); myDataAdapter1.Fill(myDataSet, "Customers"); // 迭代 DataSet foreach (DataRow myDataRow in myDataSet.Tables["Customers"].Rows) { Console.WriteLine(myDataRow["CustomerId"].ToString()); } } }