+++ 本例演示如何使用OracleCommand.ExecuteReader()
protected void Page_Load(object sender, EventArgs e)
{
string connStr = "Data Source=ora9; uid=scott; pwd=tiger; unicode=true";
string sqlStr = "SELECT * FROM EMP";
OracleConnection conn = new OracleConnection(connStr);
conn.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = sqlStr;
cmd.CommandType = CommandType.Text;
OracleDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Response.Write(dr[0].ToString() + ", " + dr[1].ToString() + "</br>");
}
conn.Close();
conn.Dispose();
cmd.Dispose();
}
+++ 说明
(1) Oraclecommand.ExecuteReader方法主要用于查询。返回OracleDataReader对象,注意该对象的数据集是只读的,并且只向前(游标只向前)。如果你不想对检索结果进行处理,那么这种方式当前是效率最高的。但在实际项目中,我根本就没用过,原因有两个,一是对检索的结果不做任何处理的情况很少,二是现在的客户机或是服务器的处理能力和内存越来越强大,何必呢。虽然程序的运行效率体现一个程序员的水平,但我认为,应该更多的关注是,你的解决方案采用什么数据结构?线性的,还是链式的,集合,还是树形结构,算法的设计如何?时间复杂度,空间复杂度是都多少等等;
(2) 查询结果,除了可以放在OracleDataReader之外,当然也可以放在更灵活的DataTable或DataSet里。
ADO.NET_第七篇_OracleCommand_02ExecuteReader
最新推荐文章于 2022-03-31 08:50:11 发布