SQL Developer警告,当我执行程序包体DDL语句时,
Warning: PLW-06015: parameter PLSQL_DEBUG is deprecated; use PLSQL_OPTIMIZE_LEVEL=1
如何将SQL Developer配置为不使用PLSQL_DEBUG?
在使用相同连接细节的sql*plus会话中,PLSQL_DEBUG被设置为false,
> show parameters plsql
NAME TYPE VALUE
----------------------
我在sys user中创建了一个序列plsql_profile_runnumber,但在dba_objects或dba_sequences中找不到它。请查看执行详情:
SQL> create sequence plsql_profiler_runnumber start with 1 nocache;
Sequence created.
SQL> select * from sys.dba_objects where object_name ='PLSQL_PROFILE_RUNNUMBER';
no rows selected
SQL> grant
创建以下内容时:
create view v (a, b) as select 1, 2 from dual;
create or replace package p as
type t is table of v%rowtype;
function f return t pipelined;
end p;
/
我可以在字典中看到一些合成类型:
select o.object_name, s.line, s.text
from all_objects o
join all_source s on o.owner = s.owner and o.object_name = s.name
我使用MySQL5.7和JDBC,我需要运行下面的查询并使用JDBC获取结果数据:
set @rownum := 0;
select *
from (select *, @rownum := @rownum + 1 as rownum from test) t
where t.rownum >= 1
and t.rownum <= 10;
表结构和init sql:
create table test(id int, name varchar(16));
insert into test(id, name) VALUES (1,'rollsbean');
我尝试
我有一个Oracle登录触发器,其中执行了一些alter session语句。我在想,如果用户执行"alter session“,我是否可以用另一个触发器来捕获?
CREATE OR REPLACE TRIGGER CI_LOGON AFTER LOGON ON DATABASE
BEGIN
execute immediate
'ALTER SESSION SET PLSQL_WARNINGS=''ENABLE:ALL'',''DISABLE:06015''';
execute i
我是Robot Framework的新手。我需要在Oracle DB中通过"Execute Sql Script“关键字运行一个PLSQL来进行数据设置。当我执行它的时候,我得到了下面的错误。 错误: *DatabaseError: ORA-06550: line 2, column 17:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:
* & = - + ; < / > at in is mod remainder n
我一直在使用上可用的,我对它相当满意。
但是当我尝试align或align-current时,我得到了一个错误:
align: Wrong type argument: sequencep, plsql-align-rules-list
我正在尝试对齐的示例代码:
declare
foo number;
x number;
y number;
begin
foo := 5;
x := 123;
y:=123;
end;
预期的结果是:
declare
foo number;
x number;
y number;
begin
foo := 5;
我有一个可用的plsql oracle存储过程(我在plsql中对它进行了测试,它返回了正确的值):
PROCEDURE FetchCode(code OUT NUMBER) IS
BEGIN
SELECT MYSEQ.NEXTVAL INTO code FROM DUAL;
END FetchCode;
以及使用实体框架的visual studio解决方案。
csdl文件包含
<FunctionImport Name="FETCHCODE" ReturnType="Collection(Decimal)">
我正在从PLSQL存储过程中收集运行时分析数据。数据是在某些存储过程执行时收集的,但它需要在这些过程的多次执行中累积。
为了最大限度地减少开销,我希望在数据收集间隔期间将分析数据存储在一些PLSQL可访问的Oracle内存驻留存储中,然后转储累加值。数据收集间隔可能是几秒或几小时;最好不要在系统启动时存储这些数据。像web服务器中的会话状态这样的东西就可以。
我有什么选择来存储这样的数据?
我所知道的唯一方法是dbms_sessions中的contexts:
procedure set_ctx (value in varchar8) as
begin
dbms_session.set
正在尝试将SQL类型集合转换为PLSQL类型。
-- create an SQL type
create or replace type arrayforvarchar as table of varchar2(30);
/
检查下面的匿名区块:
declare
type arrayforvarcharplsql is table of varchar2(30);
var_plsql_array arrayforvarcharplsql;
var_sql_array arrayforvarchar := arrayforvarchar();
begin
sele
我有一个ruby项目,没有rails。在我的项目中,我使用了一些plsql,使用了ruby_plsql gem,如下所示: require 'ruby_plsql'
plsql.connection = OCI8.new('user','password',"//host:1521/my-db") # This only execute one time
def execute_pl
ds = plsql.my_package.my_procedure(company, country) # This execute
我正在为MySQL数据库编写PLSQL触发器。我试图声明变量。所以我在触发器中写了一个声明块。以下是我的代码
CREATE TRIGGER leave_approve_trigger
AFTER UPDATE ON leave_status
FOR EACH ROW
DECLARE //Syntax error
current_id integer;
BEGIN
if NEW.status == 'APPROVED'
THEN
select id into current_id from leave_request_table;
insert into update_t
我试图深入了解plsql中的复杂优化。理论上,默认优化级别PLSQL_OPTIMIZE_LEVEL设置为2。为了获得更好的性能,我们可以将其设置为3。为了向我自己解释这一点,我使用了一个示例,其中一个过程正在调用另一个过程,以便可以使用第3级(内联过程)的优化功能。
以下是第一个步骤:
create or replace procedure p1
is
n number:=0;
begin
for i in 1..500000000
loop
n:=n+1;
end loop;
end;
这是第二个:
create or replace procedure CALL_PROC_ARITH
IS
我通过sqlplus与sys作为sysdba连接到oracle数据库11.2.0.4企业版。如果我运行查询:
select DBMS_METADATA.GET_DDL ( 'TYPE' , 'SYS_PLSQL_9131_DUMMY_1' , 'SYS' ) from dual ;
我得到了错误错误
*ORA-31603: object "SYS_PLSQL_9131_DUMMY_1" of type TYPE not found in schema "SYS"
ORA-06512:
我想知道是否已经有一些重写建议来获得函数,比如在两个日期之间生成递归日期-- generate_recurrences(),从这个链接中获得递归
在plsql?它返回一组日期,但在plsql中,我不知道如何获得日期的结果集并循环返回next next_date,其中next还在列表中返回下一个日期。
我尝试用plsql重写它,但是只返回一个日期,因为我无法找到如何返回plsql中的结果集,这是我尝试过的:
CREATE OR REPLACE FUNCTION GENERATE_RECURRENCE( rec in VARCHAR2,
我有一个干净的Ruby+Gems+DevKit+Rails安装。我已经安装了mysql和mysql2。当我尝试启动一个开发服务器时,我得到了一个错误:
C:/Ruby/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/mysql2.rb:2:in `require': Incorrect MySQL client library version! This gem was compiled for 6.0.0 but the client library is 5.6.10. (Runtime
我正在使用PLSQL开发人员使用oracle。当我编译一个存储如下代码的视图时:
select 'xidmət' as service from dual
字符串中的'ə'字符变为'?'字符。
我认为这是一些oracle或plsql开发人员配置问题,但我不知道what.What --您认为问题是什么吗?
这里有一个ksh:
$ORACLE_HOME/bin/sqlplus id/psw@$ORACLE_SID @$P_SQL/mysql.sql $1
return_code=$?
echo return_code
下面是sql:
set serverout on
var error number
...
declare
error number(1) := 0;
begin
.......
exception
when too_many_rows then
error := 2;
end;
/
exit
如何将PLSQL错误值传递给SQLPLUS变量,然后将