當前位置:首頁 » 存儲配置 » aspnet調用oracle存儲過程

aspnet調用oracle存儲過程

發布時間: 2022-06-30 05:06:19

⑴ oracle存儲過程在.net中如何調用

string strConn = ConfigurationSettings.AppSettings[ "dsn "];
OracleConnection oraConn = new OracleConnection(strConn);

OracleCommand oraComm=new OracleCommand( "過程名 ",oraConn);
oraComm.CommandType=CommandType.StoredProcere;

OracleParameter tableid=new OracleParameter( "tableid ",OracleType.Number);
tableid.Direction = ParameterDirection.Input;
tableid.Value=tblIndex;

OracleParameter max_id=new OracleParameter( "returnid ",OracleType.Number);
max_id.Direction = ParameterDirection.Output;

oraConn.Open();
oraComm.ExecuteNonQuery();
longSingleID=(int)
longSingleID=(int) oraComm.Parameters[ "returnid "].Value;

看看這個代碼,也許你能用的到

⑵ ASPNET怎樣調用一個存儲過程(帶參數的)

ASPNET怎樣調用一個存儲過程(帶參數的)使用的是Ado.NET中的相關的資料庫操作方法。
Ado.NET連接資料庫有以下幾個步驟:
1:使用配置的資料庫連接串,創建資料庫連接 Connection 對象
2:構建操作的sql語句
3:定義command對象
4:打開數據連接
5:執行命令
舉一個例子,刪除操作
public int DeleteStudent3(int stuID)
{

int result = 0;

using (SqlConnection connection = new SqlConnection(connString))
{
SqlCommand objCommand = new SqlCommand(dboOwner + ".usp_DeleteStudent", connection);
objCommand.CommandType = CommandType.StoredProcere;

objCommand.Parameters.Add("@stuID", SqlDbType.Int).Value = stuID;

connection.Open();
result = objCommand.ExecuteNonQuery();
}
return result;
}

⑶ 如何用asp調用oracle9存儲過程。需要例子加80分

<%
dim sp_common
Set sp_common = Server.CreateObject("ADODB.Command")
with sp_common
.ActiveConnection = conn
.CommandText = "cd_update_log"
.Parameters.Append .CreateParameter("@inputremark", adVarChar, adParamInput,50,"聯通.Ye")
.Parameters.Append .CreateParameter("@msg", adInteger, adParamOutput)
.execute
end with

msg=sp_common("@msg")
response.write msg
response.end
%>


create table CD_BILL_LOG
(
BILL_ID NUMBER,
DEAL_EMP_ID NUMBER,
REACH_DATE DATE,
DONE_DATE DATE,
BILL_STATUS VARCHAR2(10),
DEAL_DEPT_ID NUMBER,
SIGN NUMBER,
REMARK VARCHAR2(50)
)
;
存儲過程
create or replace procere
cd_update_log(inputremark varchar2,msg out float)
as
begin

update cd_bill_log a
set a.remark =inputremark --to_char(sysdate,'mi:ss')
where a.bill_id=45;
msg:=1;
commit;
end;

⑷ oracle資料庫調用存儲過程

這個需要分情況的

如果是在應用程序(Java等)中調用存儲過程,需要根據相應語言的語法來進行。這個可以通過查找相應語言的幫助來找到。

如果是在Oracle的其他存儲過程中調用,直接寫存儲過程名就可以了。傳入相應的參數,即可執行。

如果在Oracle的命令行中,使用EXEC 存儲過程名(參數) 的方式即可調用。

如果存儲過程執行的語句寫在SQL文件中,則可以通過調用文件的方式執行,即
SQL> @D:\SQL\example.sql的形式

⑸ ADO.Net(C#)中怎麼執行Oracle的存儲過程

SqlConnection conn=new SqlConnection ();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.StoredProcere; //命令類型是存儲過程
cmd.CommandText = "存儲過程的名字";

⑹ 如何在ASP中調用Oracle的存儲過程

如何在ASP中調用Oracle的存儲過程
age
number(4),
gender
char(1)
)
添加一條約束於gender,alter
table
test
add
constraint
gender_chk
check
(gender
in
('m','f','M','F'))
並且添加默認值於gender,alter
table
test
modify
(gender
default
'm')
添加數據:insert
into
test
values

⑺ 如何在ASP中調用Oracle的存儲過程求答案

age number(4),
gender char(1)
) 添加一條約束於gender,alter table test
add constraint gender_chk check (gender in ('m','f','M','F')) 並且添加默認值於gender,alter table test
modify (gender default 'm') 添加數據:insert into test values
('刀鋒',21,'m')
insert into test values
('柳飛雪',14,'f') call lzbbs.del('1')
程序包或函數DEL處於無效狀態 begindel('1');end; ERROR 位於第 2 行:
ORA-06550: 第 2 行, 第 1 列:
PLS-00905: 對象 LZBBS.DEL 無效
ORA-06550: 第 2 行, 第 1 列:
PL/SQL: Statement ignored
使用ASP訪問Oracle的存儲過程:set cmd=Server.CreateObject("ADODB.Command")
cmd.ActiveConnection=conn
'cmd.CommandText="{call jcptdb.IsPermit(?,?,(resultset 1,out1))}"
cmd.parameters.append paracmd(0)="1"cmd.execute OraOLEDB 錯誤'80040e14'ORA-06550: 第 1 行, 第 13 列: PLS-00905: 對象 LZBBS.DEL 無效 ORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored/test.asp,行 92

⑻ 請幫忙根據這個Oracle存儲過程寫個asp.net c#的調用代碼

using System;
using System.Collections;
using System.Collections.Specialized;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace HelpClassLibrary //可以修改成實際項目的命名空間名稱
{
/// <summary>
/// 數據訪問基礎類(基於SQLServer)
/// 用戶可以修改滿足自己項目的需要。
/// </summary>
public abstract class DbHelper
{
//資料庫連接字元串(web.config來配置)
//<add key="ConnectionString" value="server=127.0.0.1;database=DATABASE;uid=sa;pwd=" />
protected static string connectionString = ConfigurationSettings.AppSettings

["ConnectionString"];
public DbHelper()
{
}

#region 執行簡單SQL語句
/// <summary>
/// 執行SQL語句,返回影響的記錄數
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <returns>影響的記錄數</returns>
public static int ExecuteSql(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(SQLString, connection);
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (System.Data.SqlClient.SqlException E)
{
throw new Exception(E.Message);
}
}
}

/// <summary>
/// 執行多條SQL語句,實現資料庫事務。
/// </summary>
/// <param name="SQLStringList">多條SQL語句</param>
public static void ExecuteSqlTran(ArrayList SQLStringList)
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
SqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = SQLStringList[n].ToString();
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}
/// <summary>
/// 執行帶一個存儲過程參數的的SQL語句。
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <param name="content">參數內容,比如一個欄位是格式復雜的文章,有特殊符號,可以通過這個方式添加</param>
/// <returns>影響的記錄數</returns>
public static int ExecuteSql(string SQLString, string content)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(SQLString, connection);
System.Data.SqlClient.SqlParameter myParameter = new

System.Data.SqlClient.SqlParameter("@content", SqlDbType.NText);
myParameter.Value = content;
cmd.Parameters.Add(myParameter);
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (System.Data.SqlClient.SqlException E)
{
throw new Exception(E.Message);
}
finally
{
cmd.Dispose();
connection.Close();
}
}
}
/// <summary>
/// 向資料庫里插入圖像格式的欄位(和上面情況類似的另一種實例)
/// </summary>
/// <param name="strSQL">SQL語句</param>
/// <param name="fs">圖像位元組,資料庫的欄位類型為image的情況</param>
/// <returns>影響的記錄數</returns>
public static int ExecuteSqlInsertImg(string strSQL, byte[] fs)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(strSQL, connection);
System.Data.SqlClient.SqlParameter myParameter = new

System.Data.SqlClient.SqlParameter("@fs", SqlDbType.Image);
myParameter.Value = fs;
cmd.Parameters.Add(myParameter);
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (System.Data.SqlClient.SqlException E)
{
throw new Exception(E.Message);
}
finally
{
cmd.Dispose();
connection.Close();
}
}
}

/// <summary>
/// 執行一條計算查詢結果語句,返回查詢結果(object)。
/// </summary>
/// <param name="SQLString">計算查詢結果語句</param>
/// <returns>查詢結果(object)</returns>
public static object GetSingle(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(SQLString, connection);
try
{
connection.Open();
object obj = cmd.ExecuteScalar();
if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
{
return null;
}
else
{
return obj;
}
}
catch (System.Data.SqlClient.SqlException e)
{
connection.Close();
throw new Exception(e.Message);
}
}
}
/// <summary>
/// 執行查詢語句,返回SqlDataReader
/// </summary>
/// <param name="strSQL">查詢語句</param>
/// <returns>SqlDataReader</returns>
public static SqlDataReader ExecuteReader(string strSQL)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(strSQL, connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader();
return myReader;
}
catch (System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message);
}
}

}
/// <summary>
/// 執行查詢語句,返回DataSet
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <returns>DataSet</returns>
public static DataSet Query(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
DataSet ds = new DataSet();
try
{
connection.Open();
SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);
command.Fill(ds, "ds");
}
catch (System.Data.SqlClient.SqlException ex)
{
throw new Exception(ex.Message);
}
return ds;
}
}
/// <summary>
/// 返回DataTable對象
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <returns>DataTable</returns>
public static DataTable QueryDataTable(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
DataTable dt = new DataTable();
try
{
connection.Open();
SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);
command.Fill(dt);
}
catch (System.Data.SqlClient.SqlException ex)
{
throw new Exception(ex.Message);
}
return dt;
}
}
#endregion

⑼ 如何在ASP中調用Oracle存儲過程

調用不了,這個資料庫太復雜了

⑽ 在ASP.NET中如何調用 oracle 存儲過程調用

(1)執行一個沒有參數的存儲過程的代碼如下:

SqlConnection conn=new SqlConnection(「connectionString」);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = "NameOfProcere";
da.SelectCommand.CommandType = CommandType.StoredProcere;
然後只要選擇適當的方式執行此處過程,用於不同的目的即可。

(2)執行一個有參數的存儲過程的代碼如下(我們可以將調用存儲過程的函數聲明為ExeProcere(string inputdate)):

SqlConnection conn=new SqlConnection(「connectionString」);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = "NameOfProcere";
da.SelectCommand.CommandType = CommandType.StoredProcere;
(以上代碼相同,以下為要添加的代碼)
param = new SqlParameter("@ParameterName", SqlDbType.DateTime);
param.Direction = ParameterDirection.Input;
param.Value = Convert.ToDateTime(inputdate);
da.SelectCommand.Parameters.Add(param);
這樣就添加了一個輸入參數。若需要添加輸出參數:

param = new SqlParameter("@ParameterName", SqlDbType.DateTime);
param.Direction = ParameterDirection.Output;
param.Value = Convert.ToDateTime(inputdate);
da.SelectCommand.Parameters.Add(param);
若要獲得參儲過程的返回值:

param = new SqlParameter("@ParameterName", SqlDbType.DateTime);
param.Direction = ParameterDirection.ReturnValue;
param.Value = Convert.ToDateTime(inputdate);
da.SelectCommand.Parameters.Add(param);

熱點內容
php滾動 發布:2022-08-10 12:12:40 瀏覽:109
用什麼協議遠程配置交換機 發布:2022-08-10 12:12:34 瀏覽:614
c盤windows文件夾太大 發布:2022-08-10 12:12:25 瀏覽:191
wpf上傳控制項 發布:2022-08-10 12:11:04 瀏覽:170
python除模 發布:2022-08-10 12:08:03 瀏覽:501
電腦伺服器好評語 發布:2022-08-10 12:06:05 瀏覽:660
python怎麼拋出異常 發布:2022-08-10 12:05:49 瀏覽:7
資料庫個人版 發布:2022-08-10 12:04:47 瀏覽:899
java阿里開源ftp上傳 發布:2022-08-10 11:59:16 瀏覽:132
安卓相片刪除了怎麼自己恢復回來 發布:2022-08-10 11:59:12 瀏覽:996