渔鱼

人生豪迈,在此一博!

  博客园 :: 首页 :: 博问 :: 闪存 :: :: 联系 :: 订阅 订阅 :: 管理 ::

 初级入门的小例子。

首先确保引用了命名空间: 

using System.Data;
using System.Data.OracleClient;

定义连接字符串如下:

 

    private const string ConnectionString = "Data Source=mydatabase;user=name;password=pwd;";

 

 1.使用OracleCommand执行无参数简单查询,直接写SQL语句或调用存储过程,使用OracleDataReader遍历显示数据,如下:

    protected void GetData1()
    {           
        OracleConnection conn 
= new OracleConnection(ConnectionString);

        
try
        {
            conn.Open();
            OracleCommand cmd 
= new OracleCommand();

            cmd.Connection 
= conn;
            
//cmd.CommandText = "select * from TB";
            cmd.CommandText = "bowenpkg.getdata";
            cmd.CommandType 
= CommandType.StoredProcedure;

            OracleParameter parameters 
= new OracleParameter("refOut", OracleType.Cursor);
            parameters.Direction 
= ParameterDirection.Output;

            cmd.Parameters.Add(parameters);


            OracleDataReader odr 
= cmd.ExecuteReader();
            
while (odr.Read())
            {
                Response.Write(odr.GetOracleString(
1).ToString() + "<br>");
            }

            odr.Close();
        }
        
catch (Exception ee)
        {
            Response.Write(ee.Message);
        }
        
finally
        {
            conn.Close();
        }
    }

 

 

 2.使用OracleDataAdapter执行SQL语句,填充DataSet,遍历显示数据,如下:

 

    protected void GetData2()
    {
        OracleConnection conn 
= new OracleConnection(ConnectionString);
        OracleDataAdapter ad 
= new OracleDataAdapter("select * from TB", conn);

        
try
        {
            DataSet ds 
= new DataSet();
            ad.Fill(ds);

            
foreach (DataRow dr in ds.Tables[0].Rows)
            {
                Response.Write(dr[
"code"].ToString() + "<br>");
            }
        }
        
catch (Exception ee)
        {
            Response.Write(ee.Message);
        }
        
finally
        {
            conn.Close();
        }
    }

 

 3.带参数的存储过程,如下:

    protected void ViewButton_Click(object sender, EventArgs e)
    {
        OracleConnection conn 
= new OracleConnection(ConnectionString);

        
try
        {
            conn.Open();
            OracleCommand cmd 
= new OracleCommand();

            cmd.Connection 
= conn;
            cmd.CommandText 
= "bowenpkg.getdatabyid";
            cmd.CommandType 
= CommandType.StoredProcedure;

            OracleParameter[] parameters 
= {new OracleParameter("rid",OracleType.Number),new OracleParameter("refOut", OracleType.Cursor)};
            parameters[
0].Direction = ParameterDirection.Input;
            parameters[
0].Value = DropDownList1.SelectedValue;
            parameters[
1].Direction = ParameterDirection.Output;

            cmd.Parameters.Add(parameters[
0]);
            cmd.Parameters.Add(parameters[
1]);

            OracleDataAdapter da 
= new OracleDataAdapter(cmd);

            DataTable dt
=new DataTable();

            da.Fill(dt);

            Label1.Text 
= dt.Rows[0][1].ToString();
        }
        
catch (Exception ee)
        {
            Response.Write(ee.Message);
        }
        
finally
        {
            conn.Close();
        }
    }

 

 

posted on 2009-03-09 22:59  博闻李  阅读(6898)  评论(0编辑  收藏  举报