不知道你需要什么随便给你贴一个把不过连接ORACLE数据库需要微软的一个补丁不知道你有没有~要不用ole db连接很痛苦的。而且老出错
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration ;namespace ad
{
/// <summary>
/// adresourse 的摘要说明。
/// </summary>
public class adresourse : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.WebControls.Button Button1;
private string cons="";
private System.Data.OracleClient.OracleConnection myconnection = new System.Data.OracleClient.OracleConnection(); private void Page_Load(object sender, System.EventArgs e)
{
if (!this.IsPostBack )
{
Session["page"]=0;
}

string  ShcameName = ConfigurationSettings.AppSettings["source"];
string  ServiceName = ConfigurationSettings.AppSettings["id"];
string service=ConfigurationSettings.AppSettings["catalog"];
cons="User ID="+ShcameName.ToString()+";password="+service+";Data Source="+ServiceName.ToString()+";Persist Security Info=False";
myconnection.ConnectionString = cons;
int k;
k = int.Parse(Session["page"].ToString());
k++;
Session["page"]=k;
if (k!=3)
  {
  string myselectquery  = "SELECT * FROM adresourse";
  DataSet mydataset=new DataSet();
  

  System.Data.OracleClient.OracleCommand  myselectcommand = new  System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
  myconnection.Open();
  System.Data.OracleClient.OracleDataAdapter myadapter=new System.Data.OracleClient.OracleDataAdapter();
   
  myadapter.SelectCommand = new System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
  myadapter.Fill(mydataset);
  DataGrid1.DataSource=mydataset.Tables[0];
  DataGrid1.DataBind();
  myconnection.Close();
  }
 } #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{    
this.DataGrid1.CancelCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_CancelCommand);
this.DataGrid1.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_EditCommand);
this.DataGrid1.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_UpdateCommand);
this.DataGrid1.DeleteCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_DeleteCommand);
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
void BindGrid()
{
string myselectquery  = "SELECT * FROM adresourse";
DataSet mydataset=new DataSet();
myconnection.ConnectionString = cons;
System.Data.OracleClient.OracleCommand  myselectcommand = new  System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
myconnection.Open();
System.Data.OracleClient.OracleDataAdapter myadapter=new System.Data.OracleClient.OracleDataAdapter();
myadapter.SelectCommand = new System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
myadapter.Fill(mydataset);
DataGrid1.DataSource=mydataset.Tables[0];
DataGrid1.DataBind();
myconnection.Close();
}
private void Button1_Click(object sender, System.EventArgs e)
{
string str="insert into adresourse(locationid,locationdesc,width,height,url) VALUES ('','',0,0,'')";
myconnection.Open();
System.Data.OracleClient.OracleCommand  comm =new System.Data.OracleClient.OracleCommand(str,myconnection);
try
{
comm.ExecuteNonQuery();
//Message.InnerHtml = "<b>已插入记录</b><br>" + updateCmd;
DataGrid1.EditItemIndex = -1;}
catch{}
Session["page"]=1;
myconnection.Close();
BindGrid();
} private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex=e.Item.ItemIndex;
DataGrid1.DataBind();
} private void DataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex=-1;
DataBind();
Session["page"]=1;
string myselectquery  = "SELECT * FROM adresourse";
DataSet mydataset=new DataSet();
System.Data.OracleClient.OracleCommand  myselectcommand = new  System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
myconnection.Open();
System.Data.OracleClient.OracleDataAdapter myadapter=new System.Data.OracleClient.OracleDataAdapter();
myadapter.SelectCommand = new System.Data.OracleClient.OracleCommand(myselectquery, myconnection);
myadapter.Fill(mydataset);
DataGrid1.DataSource=mydataset.Tables[0];
DataGrid1.DataBind();
myconnection.Close();
} private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
String updateCmd = "UPDATE adresourse SET locationid='";
updateCmd+=((TextBox)e.Item.Cells[2].Controls[0]).Text+"', locationdesc ='"+((TextBox)e.Item.Cells[3].Controls[0]).Text +"', width='"+((TextBox)e.Item.Cells[5].Controls[0]).Text +"'," 
+ "height = '"+((TextBox)e.Item.Cells[4].Controls[0]).Text +"', url ='"+((TextBox)e.Item.Cells[6].Controls[0]).Text +"' where id='"+e.Item.Cells[1].Text +"'" ;
myconnection.Open();
System.Data.OracleClient.OracleCommand  comm =new System.Data.OracleClient.OracleCommand(updateCmd,myconnection); try
{
                comm.ExecuteNonQuery();
//Message.InnerHtml = "<b>已更新记录</b><br>" + updateCmd;
DataGrid1.EditItemIndex = -1;
    
}
catch
{} myconnection.Close();
Session["page"]=1;
BindGrid(); } private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
String updateCmd = "delete from adresourse where id='"+ e.Item.Cells[1].Text+"'";
myconnection.Open();
System.Data.OracleClient.OracleCommand  comm =new System.Data.OracleClient.OracleCommand(updateCmd,myconnection); try
{
comm.ExecuteNonQuery();
//Message.InnerHtml = "<b>已更新记录</b><br>" + updateCmd;
DataGrid1.EditItemIndex = -1;
    
}
catch
{} myconnection.Close();
Session["page"]=1;
BindGrid();
}

}
}

解决方案 »

  1.   

    一、
    using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Diagnostics;
    public class ConnClass
    {
    public ConnClass()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    }
    private static string strSource="Provider=MSDAORA.1;PASSWORD=MYPASSWORD;USER ID=MYUSERID;DATA SOURCE=MYDATASOURCE";
    private static OleDbConnection mConn=new OleDbConnection(strSource);
    public static string ConnectionString 
    {
    get
    {
    return strSource;
    }
    }
    public static OleDbConnection Conn
    {
    get
    {
    return mConn;
    }
    }
    }
    //有了这个类,你在其他的类中访问数据库时就可以直接使用了。
    二、逐条显示记录:OleDbDataReader/SqlDataReader(不过它取出的数据只是只读的)
      

  2.   

    一、连接类:
    using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Diagnostics;
    public class ConnClass
    {
    public ConnClass()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    }
    private static string strSource="Provider=MSDAORA.1;PASSWORD=MYPASSWORD;USER ID=MYUSERID;DATA SOURCE=MYDATASOURCE";
    private static OleDbConnection mConn=new OleDbConnection(strSource);
    public static string ConnectionString 
    {
    get
    {
    return strSource;
    }
    }
    public static OleDbConnection Conn
    {
    get
    {
    return mConn;
    }
    }
    }
    //有了这个类,你在其他的类中访问数据库时就可以直接使用这个连接了。
    二、逐条显示记录:可用OleDbDataReader/SqlDataReader,不过它是只读的。
      

  3.   

    上面using System.Diagnostics;
    可以不要。