简单的C#使用Oracle
2008-01-11 13:29
447 查看
1.设置Scott账户的权限,使之能创建表。
2.create table employee(UserID number(4), UserName nvarchar2(32));
3.创建包,存储过程。
create or replace procedure AddNew(pUserID in Number,pUserName in nvarchar2) is
begin
insert into Employee(UserID ,UserName) values(pUserID,pUserName);
end AddNew;
--
create or replace package Employee_Op
as
type mycType is ref cursor;
procedure ShowAll(pC out mycType);
end Employee_Op;
--
create or replace package body Employee_Op
as
procedure ShowAll(pC out mycType)
is
begin
open pC for select UserID,UserName from Employee;
end ShowAll;
end Employee_Op;
4.在C# 中调用:
用DataReader:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandText = "EMPLOYEE_OP.SHOWALL";
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("PC",OracleType.Cursor);
Cmd.Parameters[0].Direction = ParameterDirection.Output;
OracleDataReader DR = Cmd.ExecuteReader();
DataGrid1.DataSource = DR;
DataBind();
DR.Close();
Conn.Close();
用DataSet:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandText = "EMPLOYEE_OP.SHOWALL";
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("PC",OracleType.Cursor);
Cmd.Parameters[0].Direction = ParameterDirection.Output;
OracleDataAdapter DA = new OracleDataAdapter(Cmd);
//DA.TableMappings.Add("Table","Employee");
DataSet DS = new DataSet();
DA.Fill(DS);
Response.Write( DS.Tables[0].Rows.Count.ToString() );
DataGrid2.DataSource = DS.Tables[0].DefaultView;
DataGrid2.DataBind();
Cmd.Parameters.Clear();
Conn.Close();
插入数据:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.CommandText = "AddNew";
Cmd.Parameters.Add( new OracleParameter("pUserID",OracleType.Number,4) );
Cmd.Parameters.Add(new OracleParameter("pUserName",OracleType.NVarChar,32) );
Cmd.Parameters[0].Direction = ParameterDirection.Input;
Cmd.Parameters[1].Direction = ParameterDirection.Input;
Cmd.Parameters[0].Value = int.Parse( lblID.Text.ToString() ) ;
Cmd.Parameters[1].Value = lblName.Text.ToString() ;
Cmd.ExecuteNonQuery();
Conn.Close();
dsbtn_Click(this,EventArgs.Empty);
2.create table employee(UserID number(4), UserName nvarchar2(32));
3.创建包,存储过程。
create or replace procedure AddNew(pUserID in Number,pUserName in nvarchar2) is
begin
insert into Employee(UserID ,UserName) values(pUserID,pUserName);
end AddNew;
--
create or replace package Employee_Op
as
type mycType is ref cursor;
procedure ShowAll(pC out mycType);
end Employee_Op;
--
create or replace package body Employee_Op
as
procedure ShowAll(pC out mycType)
is
begin
open pC for select UserID,UserName from Employee;
end ShowAll;
end Employee_Op;
4.在C# 中调用:
用DataReader:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandText = "EMPLOYEE_OP.SHOWALL";
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("PC",OracleType.Cursor);
Cmd.Parameters[0].Direction = ParameterDirection.Output;
OracleDataReader DR = Cmd.ExecuteReader();
DataGrid1.DataSource = DR;
DataBind();
DR.Close();
Conn.Close();
用DataSet:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandText = "EMPLOYEE_OP.SHOWALL";
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("PC",OracleType.Cursor);
Cmd.Parameters[0].Direction = ParameterDirection.Output;
OracleDataAdapter DA = new OracleDataAdapter(Cmd);
//DA.TableMappings.Add("Table","Employee");
DataSet DS = new DataSet();
DA.Fill(DS);
Response.Write( DS.Tables[0].Rows.Count.ToString() );
DataGrid2.DataSource = DS.Tables[0].DefaultView;
DataGrid2.DataBind();
Cmd.Parameters.Clear();
Conn.Close();
插入数据:
string ConnStr = "data source=First;User ID = scott;Password=tiger";
OracleConnection Conn = new OracleConnection(ConnStr);
Conn.Open();
OracleCommand Cmd = new OracleCommand();
Cmd.Connection = Conn;
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.CommandText = "AddNew";
Cmd.Parameters.Add( new OracleParameter("pUserID",OracleType.Number,4) );
Cmd.Parameters.Add(new OracleParameter("pUserName",OracleType.NVarChar,32) );
Cmd.Parameters[0].Direction = ParameterDirection.Input;
Cmd.Parameters[1].Direction = ParameterDirection.Input;
Cmd.Parameters[0].Value = int.Parse( lblID.Text.ToString() ) ;
Cmd.Parameters[1].Value = lblName.Text.ToString() ;
Cmd.ExecuteNonQuery();
Conn.Close();
dsbtn_Click(this,EventArgs.Empty);
相关文章推荐
- Oraclee 事务处理以及在c#中使用oracle的事务处理
- oracle配合C#的使用
- C# 使用OCCI 连接Oracle 数据库
- AutoCode (vs插件)自动生成代码插件 下载及使用教程(C#版)( 更新简单自定义模板教程)
- C#中使用SerialPort类实现简单串口编程
- 使用C#创建简单的联系人备忘录
- [oracle 使用(2)] Oracle的简单使用
- C# BackGroundWorker 的简单使用
- 【C#】使用TcpListener和TcpClient实现简单通信
- qt5 使用oracle简单实例
- C#中正则表达式的简单使用介绍
- oracle sql case语句简单使用
- 「C#」.NET编程中连接网络MySQL数据库,使用类似SQL Server的库函数,做简单修改即可
- oracle游标cursor简单使用
- C#使用读写锁三行代码简单解决多线程并发写入文件时线程同步的问题
- C# WinForm CheckedListBox 使用的相关简单总结
- C#中return语句使用简单介绍
- C#中 什么是接口Interface,以及如何简单使用
- C#函数的简单使用
- Client使用c#和odp.net连接server oracle[转]