Enterprise Library 企业库 向Oracle数据库中 写日志的 存储过程
------先在 oracle中 創(chuàng)建表? 如下----------------------
(備注 這個表是 從企業(yè)庫自帶的 sqlserver 中翻譯過來的?,在網(wǎng)上查了一下 好像還可以 自定義表 ,但是不知道怎么弄,希望后來的朋友 繼續(xù)研究一下)
create table ORACLE_ENTLOG
(
? ID???????????????? NUMBER,
? EVENTID??????????? NUMBER,
? PRIORITY?????????? NUMBER,
? TITLE????????????? NVARCHAR2(500),
MESSAGE NVARCHAR2(1000),
? MACHINE??????????? NVARCHAR2(100),
? TIMESTAMPS???????? DATE,
? SEVERITY?????????? NVARCHAR2(100),
? APPLICATIONDOMAIN? NVARCHAR2(1000),
? PROCESSID????????? NVARCHAR2(256),
? PROCESSNAME??????? NVARCHAR2(500),
? WIN32THREADID????? NVARCHAR2(128),
? THREADNAME???????? NVARCHAR2(500),
? EXTENDEDPROPERTIES NVARCHAR2(1000),
? CATEGORY?????????? NVARCHAR2(1000)
)
---------------- 創(chuàng)建表的自增列--------
tablespace SYSTEM
? pctfree 10
? pctused 40
? initrans 1
? maxtrans 255
? storage
? (
??? initial 64K
??? next 8K
??? minextents 1
??? maxextents unlimited
??? pctincrease 50
? );
----------------------------創(chuàng)建存儲過程(1)--------------------------------------------------
備注: 這個存儲過程 的用途不太明白? 但是必須的!
create or replace procedure AddCategory
(
??? categoryName?? in???? nvarchar2,
??? logID??????????? in??? number
)
as
begin
??? UPDATE oracle_entlog SET Category=categoryName WHERE ID=logID;
??? commit;
end;
------------------------創(chuàng)建存儲過程2---------------------------------------------------
備注:這個存儲過程的用途 ?就是向 日志表 中添加日志了??
CREATE OR REPLACE PROCEDURE WRITELOG
(
??? LogId???? out???????? number,
??? EventId?? in???????? number,
Priority in number,
??? Title???????? in?????????? nvarchar2,
??? Message?????? in???????? nvarchar2,
??? machineName??? in??????? nvarchar2,
??? timestamp????? in??? Date,
??? Severity??????? in??????? nvarchar2,
??? AppDomainName?? in???????? nvarchar2,
??? ProcessId?????? in???????? nvarchar2,
??? ProcessName????? in????? nvarchar2,
??? Win32ThreadId??? in??????? nvarchar2,
ThreadName in nvarchar2,
??? formattedmessage? in????? nvarchar2
)
is
begin
??? insert into oracle_entlog
??? (
??????? ID,
??????? EventId,
??????? Priority,
??????? Title,
??????? Message,
??????? Machine,
??????? Timestamps,
??????? Severity,
??????? ApplicationDomain,
??????? ProcessId,
??????? ProcessName,
??????? Win32ThreadId,
??????? ThreadName,
??????? ExtendedProperties??
??? )
??? values
??? (
??????? seq_entlog.Nextval,
??????? EventId,
??????? Priority,
??????? Title,
??????? Message,
??????? machineName,
??????? timestamp,
??????? Severity,
??????? AppDomainName,
??????? ProcessId,
??????? ProcessName,
??????? Win32ThreadId,
??????? ThreadName,
??????? formattedmessage?
??????? );????
??????? commit;??
??????? select seq_entlog.Currval into LogId from dual;
?????
end? WriteLog;
------------------------------未完?怎么 調(diào)用 和配置 我會在下面 詳細(xì) 說明----------------------------------------------------------
轉(zhuǎn)載于:https://www.cnblogs.com/plain/archive/2011/04/15/2017186.html
總結(jié)
以上是生活随笔為你收集整理的Enterprise Library 企业库 向Oracle数据库中 写日志的 存储过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用RDLC报表(二)--使用自定义数据
- 下一篇: Asp.net Ajax AutoCom