标签: plsql

什么是java中的pl/sql varchar2类型?

  1. java中是否有varchar2变量类型?需要将pl/sql中的以下varchar2变量转换为java.
  2. 如果是,需要哪个库?(例如进口...)

例如:

a)在pl/sql中:

SE      VARCHAR2(5) := 0;
FIME    VARCHAR2(100) := P_FIME;
Run Code Online (Sandbox Code Playgroud)

b)在java中(这是正确的吗?还是需要用string []替换varchar2?):

varchar2 SE[5] = 0;
varchar2 FIME[100] = P_FIME;
Run Code Online (Sandbox Code Playgroud)

java plsql

1
推荐指数
1
解决办法
3019
查看次数

如何动态构建查询

我正在创建一个这样的查询:

v_sql:=' SELECT abc FROM '||v_table||' 
         WHERE area IN ('''||v_area||''') 
           AND (
                ('''||p_supp_nbr||''' IS NULL) 
                OR 
                supplr_vn IN ('''||p_supp_nbr||''')
               )
Run Code Online (Sandbox Code Playgroud)

现在,当p_supp_nbr是NULL那么它不是索取.

我是这样的:

((''IS NULL) OR (supplr_vn =''))

它在桌子上的检查空间

但我希望((NULL IS NULL) OR (supplr_vn =NULL))条件无效

sql oracle plsql dynamic plsqldeveloper

1
推荐指数
1
解决办法
117
查看次数

在包中声明的oracle表的记录不能使用索引吗?

谢谢你的善意
我在包的规范中声明了记录类型和记录表,我需要使用这个表类型作为管道函数的返回.
如果我将INDEX BY(某些东西)添加到表声明中,导致管道函数中的错误编译.为什么不能使用INDEX BY?

oracle plsql

1
推荐指数
1
解决办法
2693
查看次数

存在vs选择计数

在SQL Server中,性能明智,使用IF EXISTS (select * ...)比IF (select count(1)...) > 0... 更好.

但是,看起来甲骨文不允许EXISTS在IF声明中,这样做会有什么替代方法,因为使用IF select count(1) into...效率非常低效?

代码示例:

IF (select count(1) from _TABLE where FIELD IS NULL) > 0 THEN
UPDATE TABLE _TABLE
SET FIELD = VAR    
WHERE FIELD IS NULL;
END IF;
Run Code Online (Sandbox Code Playgroud)

sql-server oracle plsql

1
推荐指数
1
解决办法
2250
查看次数

我尝试调用程序时为什么会出错?

我创建了一个名为greet的过程:

create procedure greet(message in char(50))
as  
begin 
  dbms_output.put_line('Greet Message : ' || message);
end;
Run Code Online (Sandbox Code Playgroud)

程序编译成功,但当我尝试将其称为:

execute greet('Hey ! This is a self created procedure :)');
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

execute greet('Hey ! This is a self created procedure :)')
Error report:
ORA-06550: line 1, column 7:  
PLS-00905: object SUHAIL.GREET is invalid
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
06550. 00000 -  "line %s, column %s:\n%s"
*Cause:    Usually a PL/SQL compilation error.
*Action:
Run Code Online (Sandbox Code Playgroud)

它有什么错误?我为什么要这个?

注意:'suhail'是连接到oracle服务器的当前用户的名称

oracle plsql procedure oracle11g

1
推荐指数
1
解决办法
1万
查看次数

如何在pl/sql中安排作业?

我创建了一个名为的存储过程

traffic_details_temp_send_mail;
Run Code Online (Sandbox Code Playgroud)

如何让这个程序每天上午10点运行?

请帮助处理代码块.

提前致谢.

plsql oracle10g

1
推荐指数
1
解决办法
2万
查看次数

Pl/SQL循环遍历游标的值

CREATE OR REPLACE Function TotalIncome
   ( name_in IN varchar2 )
   RETURN varchar2
IS
   total_val number(6);

   cursor c1 is
     select monthly_income
     from employees
     where name = name_in;

BEGIN

   total_val := 0;

   FOR employee_rec in c1
   LOOP
      total_val := total_val + employee_rec.monthly_income;
   END LOOP;

   RETURN total_val;

END;
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我被告知我们正在循环遍历值,但我不理解的是,如果我们循环遍历值,为什么有employee_rec.monthly_income必要?此外,当我做一个FETCHon employee_rec我似乎得到一个错误,所以我猜他们彼此不同.

oracle plsql

1
推荐指数
1
解决办法
1万
查看次数

针对MS Access开发人员的Oracle提示/原则/进一步阅读

我的任务是将我创建的完整MS Access应用程序转换为Oracle应用程序.Access数据库包括大约十几个表和另外十二个查询,包括我必须使用的一些VBA逻辑来有效地排序事物.我还有VBA背后的表单来运行查询.我的目标是在Oracle服务器上重新创建此应用程序,设置相同类型的表和查询,并使用Application Express进行用户输入.这不会是一个有很多用户的环境,但有时可能有2-3人访问同一个数据库.

我的问题是:作为MS Access应用程序的开发人员,您能否推荐任何快速指南(而不是完整的书籍),这些指南可以让我了解开发Oracle应用程序时设计和方法的主要差异?我正在考虑存储过程,视图,事务以及MS Access中不可用的类似事物.最后,我需要知道如何让不同的用户根据需要使用表单编辑和导入数据到数据库,并运行相同的查询并生成特定于每个用户的输出表(所以不要写入相同的每次表).

sql oracle ms-access plsql

1
推荐指数
1
解决办法
351
查看次数

动态创建临时表

我有这样的场景,我需要创建一个存储过程,其中列将动态.基于此列,应创建临时表.实际上,我在SQL Server中执行的这种情况已将SQL Server数据库迁移到Oracle.

谢谢

plsql oracle11g

1
推荐指数
1
解决办法
2761
查看次数

使用IF语句的PL/SQL Oracle查询

我想实现一个只返回登录用户并仅显示记录的查询,我按照以下方式进行了操作:

SELECT * FROM EMPLOYEE
WHERE UPPER(username) = v('APP_USER')
Run Code Online (Sandbox Code Playgroud)

但是,我有另一个名为User_Type的列,用户可以是类型1,2或3.如果我的用户类型为1,我希望查询也返回所有表记录,因为用户类型1是管理员.

我想这样做:

BEGIN
SELECT * FROM Employee 
WHERE upper(username) = v('APP_USER')
IF User_Type = 1
THEN SELECT * FROM Employee
END IF;
END;
/
Run Code Online (Sandbox Code Playgroud)

但它在APEX Oracle PLSQL中不起作用.

有什么建议?

sql oracle plsql if-statement oracle-apex

1
推荐指数
1
解决办法
1万
查看次数