CREATE OR REPLACE PROCEDURE "CIIC"."USP_WRITELOGTODATABASE" as
EventId INTEGER;
Priority INTEGER;
Title varchar2(500);
Message varchar2(4000);
machineName varchar2(100);
Timestamp DATE;
Severity varchar2(100);
AppDomainName varchar2(1000);
ProcessId INTEGER;
ProcessName varchar2(500);
Win32ThreadId INTEGER;
ThreadName varchar2(500);
formattedmessage varchar2(4000);
LogId out number
begin
counter number;
SELECT SEQ_TB_CANDIDATE_LOG.NEXTVAL INTO :counter FROM dual
LogId := counter; insert into TB_CANDIDATE_Log
(
id,
EventId,
Priority,
Title,
Message,
Machine,
Timestamps,
Severity,
ApplicationDomain,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
ExtendedProperties
)
values
(
LogId,
EventId,
Priority,
Title,
Message,
machineName,
Timestamp,
Severity,
AppDomainName,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
formattedmessage
);
end;
总是提示“行号= 15 列号= 34 错误文本= PLS-00103: 出现符号 "NUMBER"在需要下列之一时: := . ( @ % ; not null range default character ” 谢谢 大家了 着急啊!
EventId INTEGER;
Priority INTEGER;
Title varchar2(500);
Message varchar2(4000);
machineName varchar2(100);
Timestamp DATE;
Severity varchar2(100);
AppDomainName varchar2(1000);
ProcessId INTEGER;
ProcessName varchar2(500);
Win32ThreadId INTEGER;
ThreadName varchar2(500);
formattedmessage varchar2(4000);
LogId out number
begin
counter number;
SELECT SEQ_TB_CANDIDATE_LOG.NEXTVAL INTO :counter FROM dual
LogId := counter; insert into TB_CANDIDATE_Log
(
id,
EventId,
Priority,
Title,
Message,
Machine,
Timestamps,
Severity,
ApplicationDomain,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
ExtendedProperties
)
values
(
LogId,
EventId,
Priority,
Title,
Message,
machineName,
Timestamp,
Severity,
AppDomainName,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
formattedmessage
);
end;
总是提示“行号= 15 列号= 34 错误文本= PLS-00103: 出现符号 "NUMBER"在需要下列之一时: := . ( @ % ; not null range default character ” 谢谢 大家了 着急啊!
解决方案 »
- 新建一个最简单的储存过程都建不了呢?
- oracle问题。Java程序运行速度越来越慢。。经过测试程序没有问题。数据库压力 服务器压力也没问题。。有什么细节方面要注意呢?
- 求关于Rman在windows和linux下定时备份oracle数据库的例子
- ORACLE连接问题
- 应该如何使用insert into 语句在将tableAA的数据导入tableBB中! 源数据库为Oracle 目的数据库为 SQL Server
- 这个日期怎么插?高手指点!
- SQL> startup mountORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME
- sysdba,sysoper,normal和角色,用户有什么区别
- 请教:oracle让我从何学起呢??
- 用PL/SQL写的程序和用C,Java写的操作Oracle数据库的程序,哪个效率更高?
- .net开发的oracle程序在客户端部署
- oracle的游标对查询返回的记录数是否有限制
counter number;
变量定义的地方错了, 应为 counter number;
begin
(
EventId INTEGER,
Priority INTEGER,
Title varchar2,
Message varchar2,
machineName varchar2,
Timestamp DATE,
Severity varchar2,
AppDomainName varchar2,
ProcessId INTEGER,
ProcessName varchar2,
Win32ThreadId INTEGER,
ThreadName varchar2,
formattedmessage varchar2,
LogId out number
) as counter number;
begin
................
还是那样的:
CREATE OR REPLACE PROCEDURE "CIIC"."USP_WRITELOGTODATABASE" as
EventId INTEGER;
Priority INTEGER;
Title varchar2(500);
Message varchar2(4000);
machineName varchar2(100);
Timestamp DATE;
Severity varchar2(100);
AppDomainName varchar2(1000);
ProcessId INTEGER;
ProcessName varchar2(500);
Win32ThreadId INTEGER;
ThreadName varchar2(500);
formattedmessage varchar2(4000);
LogId out number
//我記得如果是OUT,應該放在參數裏吧?樓主請確認一下
begin
counter number;
//這個定義變數應該放begin上面吧
SELECT SEQ_TB_CANDIDATE_LOG.NEXTVAL INTO :counter FROM dual
//into 不用加‘:’,後面要用‘;’
LogId := counter; insert into TB_CANDIDATE_Log
(
id,
EventId,
Priority,
Title,
Message,
Machine,
Timestamps,
Severity,
ApplicationDomain,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
ExtendedProperties
)
values
(
LogId,
EventId,
Priority,
Title,
Message,
machineName,
Timestamp,
Severity,
AppDomainName,
ProcessId,
ProcessName,
Win32ThreadId,
ThreadName,
formattedmessage
);
end;