.net+oracle+crystalReports开发web应用程序学习笔记(二)

博客介绍了Oracle数据库开发的相关内容,包括数据库连接,指出安装客户端后连接需数据库名称、用户名和密码;还阐述了在.NET中运行Oracle包中的函数和存储过程的方法,如设计时复制声明、运行时添加代码,以及使用存储过程的具体操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上次提到基本的配置注意问题,现在开始实际开发oracle中的问题

一 oracle 数据库的连接

但你装了oracle的客户端,在配置时就已经指定了数据库服务器,所以连接时主要由三个元素就可以连接上数据库,数据库的名称(即SID),用户名,密码

SqlConnection con=new SqlConnection("Provider=MSDAORA.1;User ID=UserID;Data Source=xf;Password=password")

而sql Server不需要安装客户端,所以必须指定服务器,和数据库名

SqlConnection con=new SqlConnection("workstation id=XIAOFENG;packet size=4096;user id=sa;integrated security=SSPI;data source=xiaofeng;persist security info=False;initial catalog=xf");

二 在oracle中运行包(Package)中的函数和存储过程。

举个例子,要运行下面一个sql语句:"select order_no,inventory_part_api.get_description(contract,part_no),part_no from SHOP_ORD where inventory_part_api.get_description(contract,part_no) like '%喜之郎25%果冻%'";

1.在.net设计中(如设计sqlDataAdapter)不能够直接使用包中的函数和存储过程,如果要使用,可以在设计时把包中要使用的函数和存储过程copy过来再设计时声明一遍,就可以使用

2.在.net运行时直接添加代码,系统会直接去寻中包中的内容

string strCommand;

strCommand="select order_no,inventory_part_api.get_description(contract,part_no),part_no from SHOP_ORD where inventory_part_api.get_description(contract,part_no) like '%喜之郎25%果冻%'";

OleDbConnection con=new OleDbConnection("Provider=MSDAORA.1;Password=password;User ID=UserID;Data Source=xf");

con.Open();

OleDbDataAdapter adapter=new OleDbDataAdapter(strCommand,con);

DataSet dataset = new DataSet();

adapter.Fill(dataset);

this.DataGrid1.DataSource=dataset;

DataGrid1.DataBind();

con.Close();

?

3.怎么使用存储过程

OracleConnection conn = new OracleConnection("Data Source=Oracle8i;Integrated Security=yes");

Conn.Open;

OracleCommand cmd = conn.CreateCommand();

cmd.CommandText = "sp_pkg.getdata";

cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add(new OracleParameter("a1", OracleType.Cursor)).Direction = ParameterDirection.Output;

cmd.Parameters.Add(new OracleParameter("a2", OracleType.Cursor)).Direction = ParameterDirection.Output;

DataSet ds = new DataSet();

OracleDataAdapter adapter = new OracleDataAdapter(cmd);

adapter.Fill(ds);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值