asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

asp.net 连接Oracle数据库


发布日期:2023年04月14日
 
asp.net 连接Oracle数据库
代码如下

connectionString="Password=czh;User ID=czh;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=skydream)));"

HOST服务器IP或者服务器名称

SERVICE_NAMEoracle数据名称

User IDoracle 用户名

Passwordoracle用户密码

如果oracle数据库和web在同一台服务器上 可以写成

connectionString="Password=czh;User ID=czh;Data Source=skydream;"

下面我们要开始查询数据了

准备工作

A安装Oracle Client我安装的是oracle g如果使用Data Source=IP地址就必须安装客户端

net中添加引用SystemDataOracleClient

定义连接方式(绑定数据到GridView)string strConn=“Data Source=IP地址;User ID=账号;Password=密码”;

代码如下

OracleConnection conn=new OracleConnection(strConn); 实例化连接

connopen();

string strSql="select * from Table";

OracleDataAdapter da=new Oracle DataAdapter(strSqlconn);

DataTable dt=new DataTable();

daFill(dt);

connClose();

GridviewDataSource=dt;

GridviewDataBind();

绑定成功

B如果没有安装oracle的客户端从一些资料查看到可以使用

代码如下

string StrConn=“Data Source=(

DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = **))

)

(CONNECT_DATA =

(SERVICE_NAME = 服务名)

)

);

user ID=账号;Password=密码;”;未做验证

B 关于读取数据库的集中方式

就是A中的实例

Updateinsert更新查询oracle数据库内容*

代码如下

OracleConnection conn=new OracleConnection(strConn);

connopen();

string strSql=“update tabel set column=‘’ where …”;

or strSql=“insert into table values(‘’’’)”;

OracleCommand ocd=new OracleCommand(strSqlconn);

int intResult=ocdExecuteNonQuery();

connclosed();

读取查询oracle数据库内容

代码如下

String strSql=“select * from tblproject”;
OracleCommand cmd=new OracleCommand(strSqlconn);
OracleDataReader dr=cmdExecuteReader();
If(drRead())

{……}

cmdDispose();

drDispose();

connClosed();

在连接过程中我出现过一些问题下面也分享给各位同学连接ORACLE出错

当在aspnet应用中使用数据访问的组件(调用SystemDataOracleClient)时程序报“SystemException: SystemDataOracleClient requires Oracle client software version or greater”的错误无法创建OracleConnection

A 当Oracle 运行在NTFS的分区上时对于某些非administrator组的用户ORACLE_HOME 目录是不可见的而在windows server 下aspnet应用使用的帐户是netword service因此无法创建oracle连接只要重设一下ORACLE_HOME目录的权限就可以了

步骤如下

以管理员的用户登录;

找到ORACLE_HOME文件夹(本人的是D:oracleora不要对着ORACLE文件夹修改因为ORACLE_HOME文件夹是oracle下面的那个ora文件夹)点右键选属性安全在组或用户栏中选“Authenticated Users”在下面权限列表中把“读取和运行”的权限去掉再按应用;重新选上“读取和运行”权限点击应用;选权限框下面的“高级”按钮确认“Authenticated Users”后面的应用于是“该文件夹子文件夹及文件”按确定把权限的更改应用于该文件夹;

重新启动计算机让权限设置生效(其实只需要重启IIS就可以);

登录后运行aspnet应用正常取得Oracle数据库的数据

上一篇:asp.net跳转页面的3种方法

下一篇:加密和解密ASP.NET配置文件(Web.config)