怎样将sqlDataReader整行读取出来,dataRow可以吗?
1:我不知道怎么样把sqldataReader中返回的一整行读取出来,我只知道用.getValue可以获取某一列的值。可以用DataRow获取吗?或者怎么样才行?2:用D...
1:我不知道怎么样把sqldataReader中返回的一整行读取出来,我只知道用.getValue可以获取某一列的值。可以用DataRow获取吗?或者怎么样才行?
2:用DataTable返回一行是不是和DataReader是一个概念? 展开
2:用DataTable返回一行是不是和DataReader是一个概念? 展开
1个回答
展开全部
很早以前用的SqlDataReader读取数据库数据了,都忘记了,根据你的要求,推荐用这样的方式读取数据,较为高效一点,也是你想要的DataRow的方式:
DataTable table = new DataTable(); SqlConnection SqlConn = new SqlConnection(connectionString); SqlConn.Open(); SqlCommand sqlComm = new SqlCommand("SELECT * FROM XXXX",SqlConn); SqlDataAdapter sqlAdapter = new SqlDataAdapter(sqlComm); sqlAdapter.Fill(table); SqlConn.Close();
foreach (DataRow itemRow in table.Rows) { ........... }
DataTable table = new DataTable(); SqlConnection SqlConn = new SqlConnection(connectionString); SqlConn.Open(); SqlCommand sqlComm = new SqlCommand("SELECT * FROM XXXX",SqlConn); SqlDataAdapter sqlAdapter = new SqlDataAdapter(sqlComm); sqlAdapter.Fill(table); SqlConn.Close();
foreach (DataRow itemRow in table.Rows) { ........... }
追问
这样是不是直接用DataTable还好一点儿? 只使用datatable的第一行就相当于sqldatareader了?
追答
对,直接用这样的方式要好一些,这种写法,是将查询结果全部映射到DataTable中,SqlDataReader是逐行读取,如果数据量大一点的话,用我说的这种方式效率稍高一点。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询