从数据库获取数据很容易,处理数据更容易。若是想要从数据库获取只进、只读的数据流结果集,你可使用 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()); } } }