标签: oracle10g

是否可以从PL/SQL块输出SELECT语句?

我怎样才能获得PL/SQL块来输出SELECT语句的结果,就像我做一个普通的一样SELECT

例如,如何做一个SELECT像:

SELECT foo, bar FROM foobar;
Run Code Online (Sandbox Code Playgroud)

提示:

BEGIN
SELECT foo, bar FROM foobar;
END;
Run Code Online (Sandbox Code Playgroud)

不起作用.

sql oracle plsql oracle10g oracle-apex

59
推荐指数
5
解决办法
15万
查看次数

如何在SELECT语句中使用BOOLEAN类型

我在参数中有一个带有BOOLEAN的PL/SQL函数:

function get_something(name in varchar2, ignore_notfound in boolean);
Run Code Online (Sandbox Code Playgroud)

此功能是第三方工具的一部分,我无法改变这一点.

我想在SELECT语句中使用这个函数,如下所示:

 select get_something('NAME', TRUE) from dual;
Run Code Online (Sandbox Code Playgroud)

这不起作用,我得到这个例外:

ORA-00904:"TRUE":标识符无效

据我了解,关键字TRUE无法识别.

我怎样才能做到这一点?

sql oracle plsql oracle10g ora-00904

55
推荐指数
4
解决办法
23万
查看次数

Oracle日期"之间"查询

我正在使用oracle数据库.我想执行一个查询来检查两个日期之间的数据.

NAME               START_DATE    
-------------    ------------- 
Small Widget       15-JAN-10 04.25.32.000000 PM      
Product 1          17-JAN-10 04.31.32.000000 PM  



select * from <TABLENAME> where start_date  
BETWEEN '15-JAN-10' AND '17-JAN-10'
Run Code Online (Sandbox Code Playgroud)

但是我从上面的查询中得不到任何结果.我想我必须使用"喜欢"和"%".但我不知道在哪里使用它们.请点亮这个.

提前致谢.

sql oracle oracle10g where-clause date-arithmetic

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

如何执行oracle存储过程?

我正在使用oracle 10g快递版.它对数据库开发人员来说非常好用.但我面临执行存储过程的一些问题.

程序:

create or replace procedure temp_proc is
begin
  DBMS_OUTPUT.PUT_LINE('Test');
end
Run Code Online (Sandbox Code Playgroud)

它创建成功.但是当我执行时:

execute temp_proc;

它显示ORA-00900:无效的SQL语句

所以需要帮助

oracle plsql oracle10g ora-00900

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

PL/SQL块问题:找不到数据错误

SET SERVEROUTPUT ON
DECLARE
    v_student_id NUMBER := &sv_student_id;
    v_section_id NUMBER := 89;
    v_final_grade NUMBER;
    v_letter_grade CHAR(1);
BEGIN
    SELECT final_grade
    INTO v_final_grade
    FROM enrollment
    WHERE student_id = v_student_id
    AND section_id = v_section_id;

    CASE -- outer CASE
        WHEN v_final_grade IS NULL THEN
            DBMS_OUTPUT.PUT_LINE ('There is no final grade.');
        ELSE
            CASE -- inner CASE
                WHEN v_final_grade >= 90 THEN v_letter_grade := 'A';
                WHEN v_final_grade >= 80 THEN v_letter_grade := 'B';
                WHEN v_final_grade >= 70 THEN v_letter_grade := 'C';
                WHEN v_final_grade >= 60 THEN …
Run Code Online (Sandbox Code Playgroud)

sql oracle plsql oracle10g ora-01403

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

如何杀死正在运行的SELECT语句

如何通过终止会话来停止正在运行的SELECT语句?

该命令根据SELECT语句不断给出输出,我想在两者之间停止输出.

sql oracle select sqlplus oracle10g

46
推荐指数
3
解决办法
17万
查看次数

oracle中的CURRENT_TIMESTAMP和SYSDATE不同

在oracle 10g中执行此SQL后:

SELECT SYSDATE, CURRENT_TIMESTAMP  FROM DUAL
Run Code Online (Sandbox Code Playgroud)

我收到这个奇怪的输出: Toad输出用于查询

造成时间差异的原因是什么?服务器时间等于SYSDATE值

oracle plsql oracle10g

46
推荐指数
3
解决办法
14万
查看次数

哪种.NET数据类型最适合在NHibernate中映射NUMBER Oracle数据类型?

我已经看到了一些decimal在NHibernate项目中使用的示例,用于映射到Oracle中的整数列.现在,我使用int,并long在我的计划.

decimalover int/ long?有什么好处?它表现更好吗?

c# oracle nhibernate nhibernate-mapping oracle10g

45
推荐指数
3
解决办法
7万
查看次数

将Oracle序列重置为现有列中下一个值的最佳方法?

出于某种原因,过去的人不使用sequence.NEXTVAL插入数据.因此,当我使用sequence.NEXTVAL来填充表时,我得到了PK违规,因为该数字已在表中使用.

如何更新下一个值以使其可用?现在,我只是一遍又一遍地插入,直到它成功(INSERT INTO tbl (pk) VALUES (sequence.NEXTVAL)),然后同步下一个.

sql oracle primary-key sequence oracle10g

44
推荐指数
5
解决办法
11万
查看次数

ORA-28000:帐户被锁定错误频繁出现

ALTER USER username ACCOUNT UNLOCK经常收到错误.

是DB问题吗?当我通过命令XE临时解锁用户帐户时,它会没问题.然后在一段时间后发生相同的帐户锁定.

有人有同样的问题吗?使用的数据库是oracle XE

oracle oracle10g oracle11g

42
推荐指数
6
解决办法
16万
查看次数