ASP.NET2.0连接ORACLE解决方案_[Asp.Net教程] 以前写.net都用SQL Server2005数据库,但公司里要用Oracle 9i数据库,只能改程序的接口了,我从网上查了很多文章,很多都只说了一个方面,试验起来都不成功,测试了好多次终于成功了,所以做个简单得Demo把解决方法告诉遇到此类问题的朋友们。Demo界面: Default.aspx 界面上添加的控件: 两个TextBox: tEmail(用于输入用户email),tPassword(用于输入注册密码) 一个Button: bReg 一个Label: lLable(用于注册成功后显示应答)Demo的代码: Default.aspx.cs我们先把数据的连接字符串写在Web.config里: 下面是Demo的源代码:using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.OracleClient; //添加OracleClient的引用public partial class _Default : System.Web.UI.Page { public System.Data.OracleClient.OracleConnection objConn; //声明一个OracleConnection对象 public System.Data.OracleClient.OracleCommand objCmd; //声明一个OracleCommand对象 protected void Page_Load(object sender, EventArgs e) { lLable.Text = ""; string strcon = System.Configuration.ConfigurationManager.AppSettings["oracleconn"]; //从Web.config 文件里调用数据库连接字符串 objConn = new OracleConnection(strcon); } protected void bReg_Click(object sender, EventArgs e) { string strSQL = "INSERT INTO TEMP(EMAIL,PASSWORD) values ('"; strSQL+=tEmail.Text.Replace("'","''").ToString()+"','"; strSQL+=tPassword.Text.Replace("'","''").ToString()+"')"; objCmd = new OracleCommand(strSQL, objConn); objConn.Open(); objCmd.ExecuteNonQuery(); objConn.Close(); lLable.Text = "注册成功,您的邮件地址是:"+tEmail.Text.ToString(); }} 注意:其实直接写上面的代码会出不少错误的,要做两个工作才可以。1. ASP.NET2.0里默认不能直接添加using System.Data.OracleClient;需要在填加引用的.NET组件框里选择System.Data.OracleClient添加后才能用。2. 在ASP.NET1.1中调用Web.config中的数据库连接字符串时使用语句System.Configuration.ConfigurationSettings.AppSettings["oracle"];,在2.0里须要使用System.Configuration.ConfigurationManager.AppSettings["oracleconn"];,并且需先在填加引用的.NET组件框里选择System.Configuration添加后才能用。 好了,工作做完了,一切OK。
|