Select local (tmp) Table in function->; Table not found
Hello
I want to create a cursor that selects from a Table that does not exist in the database.
I have create this table in local table (what is that called? nested table?).
Not shown in the code but I want to fill this local array later.
After completing my cursor is going to use this full table.
When trying to launch I get the error Table or view does not exist in the 'FROM T1 TempTab_var;"my slider.
This is my simplified code:
CREATE OR REPLACE FUNCTION PC_RL_MTA_PMT RETURN PC_RL_MTA_TYPE_PMT IS result_out PC_RL_MTA_TYPE_PMT; TYPE TempTab_record_type IS RECORD (ID int); TYPE TempTab_type IS TABLE OF TempTab_record_type INDEX BY BINARY_INTEGER; TempTab_var TempTab_type; CURSOR TempCursor3_var IS SELECT ID AS ID_var FROM TempTab_var T1; BEGIN RETURN result_out; END PC_RL_MTA_PMT;
Any ideas what is wrong?
Thank you very much in advance.
And another example of my library of examples, just for you troubleshoot...
SQL > CREATE or REPLACE TYPE AS OBJECT num_descript (num number, descript varchar2 (30))
2.Type of creation.
SQL > CREATE or REPLACE TYPE tbl_num_descript AS TABLE OF THE num_descript
2.Type of creation.
SQL > CREATE or REPLACE PACKAGE AS-reftest
2 FUNCTION pipedata (number p_choice) tbl_num_descript RETURN PIPELINED;
3 END;
4.Package created.
SQL > CREATE or REPLACE PACKAGE BODY AS-reftest
2 FUNCTION pipedata (number p_choice) tbl_num_descript RETURN PIPELINED IS
3 v_obj num_descript: = num_descript (NULL, NULL);
4 v_rc sys_refcursor;
5 BEGIN
6. IF p_choice = 1 THEN
7 v_rc OPEN to SELECT empno as num, ename like descript FROM emp;
8 ELSIF p_choice = 2 THEN
9 OPEN v_rc to SELECT deptno as num, dname as descript OF THE Department;
10 END IF;
11 LOOP
12 FETCH v_rc INTO v_obj.num, v_obj.descript;
EXIT 13 WHEN v_rc % NOTFOUND;
14 PIPE ROW (v_obj);
15 END LOOP;
16 v_rc NARROW;
RETURN 17;
18 END;
END 19;
20.Package body created.
SQL > select * from table (reftest.pipedata (1));
DESCRIPT NUM
---------- ------------------------------
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
KING 7839
7844 TURNER
7876 ADAMS
JAMES 7900
7902 FORD
7934 MILLER14 selected lines.
SQL > select * from table (reftest.pipedata (2));
DESCRIPT NUM
---------- ------------------------------
10 ACCOUNTING
SEARCH 20
30 SALES
40 OPERATIONS
Tags: Database
Similar Questions
-
Hello
I am trying to import a specific table. I tried to use the schema name directly and also '------as sysdba "in utility impdp. Both are giving the same error as shown below,
ORA-39002: invalid operation
ORA-39166: object not found Schemaname.OBJECT_LINKS.
Impdp name username/password DIRECTORY = EXP_IMP_EM = dumpfile * .dmp logfile = import_160216.log tables = OBJECT_LINKS content = data_only table_exists_action = truncate (or)
Impdp------"/ ACE sysdba\ ' DIRECTORY = EXP_IMP_EM = dumpfile * .dmp logfile = import_160216.log tables = schemaname. Content OBJECT_LINKS = data_only table_exists_action = truncate
Above are the instructions that I used, in both cases that the table is not found. But I checked and the table exists. I don't understand the problem. Could someone help me on this please?
> The dump file has details on objects SCHEMA1 and with this file I want to import a particular table in SCHEMA2. Below the synatx used,
>
> impdp/password system DIRECTORY = EXP_IMP_EM = dumpfile * .dmp logfile = import_160216.log tables = SCHEMA2.object_links content = data_only table_exists_action = truncate master_only = y job_name = master
If the dumpfile has schema1 and schema2 want, then you have to a remap_schema = schema1:schema2
The above-mentioned remap table will not work. You can't remap a pattern with a remap_table parameter.
> Now the select object_schema of the query, object_name of the master where object_type IN ('TABLE', 'TABLE_DATA') and object_name = "OBJECT_LINKS" give inferior results
>
> OBJECT_SCHEMA OBJECT_NAME > SCHEMA2 OBJECT_LINKS > SCHEMA1 OBJECT_LINKS > SCHEMA1 OBJECT_LINKS > SCHEMA1 OBJECT_LINKS I would have had you add more than a few columns to the query.
Select parameter type_objet, object_schema, processing_state, processing_status of the master where object_type IN ('TABLE', 'TABLE_DATA') and object_name = 'OBJECT_LINKS' and process_order > 0 and duplicate = 0;
You can post the modified query results?
Thank you
Dean
-
Table not found after recovery completes tablespace
Hello all, Table not found even after tablespace restored and recovered. Please loot at it if you have a minute.
SQL > conn reddy/reddy
Connected.
SQL > select table_name from user_tables where nom_tablespace = 'REDDY ';
TABLE-NAME
------------------------------
RECORDS
EMP
SQL > select * from emp;
ENAME E_NUM ESAL E_ID
-------------------- ---------- ---------- ----------
Jim 1001 40000 25
Sam 27 30000 1002
Kim 1003 35000 30
Phil 1005 25000 37
Sam 1006 32000 40
James 1009 43000 45
6 selected lines.
SQL > exit
Disconnected from the database to Oracle 10 g Enterprise Edition Release 10.2.0.1.0 - Production
With partitioning, OLAP and Data Mining options
[oracle@RHELSRV ~] $ rman
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Apr 4 21:05:37 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN > Connect target /.
connected to target database: ORCL (DBID = 1314955841)
RMAN > backup tablespace reddy;
From backup 4 July 12
using the control file of the target instead of recovery catalog database
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid = 115 devtype = DISK
channel ORA_DISK_1: from full datafile backupset
channel ORA_DISK_1: specifying datafile (s) in backupset
input datafile fno = name=/u01/app/oracle/oradata/orcl/reddy01.dbf 00008
channel ORA_DISK_1: starting total, 1 to 4 July 12
channel ORA_DISK_1: finished piece 1 to 4 July 12
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2012_07_04/o1_mf_nnndf_TAG20120704T210605_7z8rq6pb_.bkp tag = TAG20120704T210605 comment = NONE
channel ORA_DISK_1: complete set of backups, time: 00:00:07
Backup finished on 4 July 12
From control file and SPFILE Autobackup 4 July 12
total, handle = / u01/orabackup/c-1314955841-20120704-01 comment = NONE
Control finished and Autobackup SPFILE file to 4 July 12
RMAN > exit
Complete recovery manager.
[oracle@RHELSRV ~] $ expdp dumpfile = logfile = directory = dpump emp.log emp.dmp tables = emp
Export: Release 10.2.0.1.0 - Production on Wednesday, July 4, 2012 21:07:21
Copyright (c) 2003, 2005, Oracle. All rights reserved.
Username: reddy
Password:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With partitioning, OLAP and Data Mining options
Starting "REDDY". "" SYS_EXPORT_TABLE_01 ": reddy / * dumpfile = logfile = directory = dpump emp.log emp.dmp tables = emp
Current estimation using BLOCKS method...
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 64 KB
Object type TABLE_EXPORT/TABLE/TABLE processing
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Object type TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS of treatment
. . exported "REDDY". "" EMP "6,070 KB 6 ranks
Table main "REDDY". "" SYS_EXPORT_TABLE_01 "properly load/unloaded
******************************************************************************
Empty the files together for REDDY. SYS_EXPORT_TABLE_01 is:
/U01/orabackup/EMP.dmp
Work "REDDY". "" SYS_EXPORT_TABLE_01 "conducted at 21:08:07
[oracle@RHELSRV ~] $ sqlplus
SQL * more: Release 10.2.0.1.0 - Production on Wed Apr 4 08:21:21 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter the user name: reddy
Enter the password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With partitioning, OLAP and Data Mining options
SQL > drop table emp;
Deleted table.
SQL > select table_name from user_tables where nom_tablespace = 'REDDY ';
TABLE-NAME
------------------------------
RECORDS
SQL > conn virtue sysdba
Connected.
SQL > alter tablespace reddy offline;
Tablespace altered.
SQL > exit
Disconnected from the database to Oracle 10 g Enterprise Edition Release 10.2.0.1.0 - Production
With partitioning, OLAP and Data Mining options
[oracle@RHELSRV ~] $ rman
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Apr 4 21:09:39 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN > restore tablespace reddy;
From restoration to July 4, 12
RMAN-00571: ===========================================================
RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =.
RMAN-00571: ===========================================================
RMAN-03002: failure of the restore command at 04/07/2012 21:09:56
RMAN-12010: automatic channel distribution initialization failed
RMAN-06171: not connected to the target database
RMAN > Connect target /.
connected to target database: ORCL (DBID = 1314955841)
RMAN > restore tablespace reddy;
From restoration to July 4, 12
using the control file of the target instead of recovery catalog database
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid = 109 devtype = DISK
channel ORA_DISK_1: from datafile backupset restoration
channel ORA_DISK_1: specifying datafile (s) to restore from backup set
restoring datafile 00008 to /u01/app/oracle/oradata/orcl/reddy01.dbf
channel ORA_DISK_1: backup /u01/app/oracle/flash_recovery_area/ORCL/backupset/2012_07_04/o1_mf_nnndf_TAG20120704T210605_7z8rq6pb_.bkp piece reading
channel ORA_DISK_1: restored the backup part 1
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2012_07_04/o1_mf_nnndf_TAG20120704T210605_7z8rq6pb_.bkp tag = TAG20120704T210605
channel ORA_DISK_1: restore complete, duration: 00:00:01
Restoration finished in July 4, 12
RMAN > recover tablespace reddy;
To go back to July 4, 12
using channel ORA_DISK_1
starting media recovery
media recovery complete, duration: 00:00:01
Finished recover to 4 July 12
RMAN > exit
Complete recovery manager.
[oracle@RHELSRV ~] $ sqlplus "virtue sysdba".
SQL * more: Release 10.2.0.1.0 - Production on Wed Apr 4 21:10:42 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With partitioning, OLAP and Data Mining options
SQL > alter tablespace reddy online.
Tablespace altered.
SQL > conn reddy/reddy
Connected.
SQL > select table_name from user_tables where nom_tablespace = 'REDDY ';
TABLE-NAME
------------------------------
RECORDS
Thanks in advance!you have made a complete recovery - that's why everything should be consistent. After RELEASE, the data dictionary has removed information about the table. Therefore, on the restoration and recovery, also, information about the table should not exist. Oracle made the right choice by making the tablespace to be consistent with the rest of the database, including the data dictionary.
Hemant K Collette
-
I'm trying to select several images (Forms), but I have not found a selection tool. This selection tool to transform the mouse cursor in an arrow and it is possible to select several images or figures. I use Microsoft Excel for Mac 2011 Version 14.5.3. Thank you!
tupensi wrote:
use Microsoft Excel for Mac 2011 Version 14.5.3. Thank you!
Then you should post on the Microsoft Mac forums where to hang out the gurus of the Office, as is the Microsoft product, with that you are having problems:
-
Hello world
Hope all is well,
In a previous thread.
West of stem has provided the name of the discoverer table which contains the reports:
EUL5_Documents.
I went to Oracle Developer just to run a select statement on this table.
(We use discoverer out of an ODS - data warehouse - like repository)
So in Oracle developer, I signed in ODS and typed:
Select * from EUL5_documents
I typed EUL5_ a drop-down list of tables appear, so I chose EUL5_documents
I get an error msg when I run the table is not found...
All advice would be appreciated, tx, sandraHi, Sandra
You are probably using the SunGard ODS?If so, you must open a session as long as the owner of the EUL is not the owner of the ODS. In many cases, this account is ODSDISCO.
You can tell by logging in to the administration tool. Any account that you use to connect there is one that you can use to query the underlying tables. EUL5_DOCUMENTS is definitely one you want to watch.
Best wishes
Michael -
Table not found but the data in the Table are available
Hello
I connected as SYS.
When it is placed below query in sql navigator, no line not found.
Select * from dba_objects where type_objet = 'TABLE' and object_name = 'GREM. "
But when placed under query, the rows are retrieved.
Select * from grem.
How is that possible?Hulk says:
It returns: SYNONYMSo, you have your answer. Now, you can issue:
column tbl format a79 select nvl2(table_owner,'"' || table_owner || '"."',null) || table_name || nvl2(db_link,'"@' || db_link,'"') tbl from dba_synonyms where synonym_name = 'GREM' / {code} and see what table synonym points to. SY.
-
Table not found error in the procedure
I am logged in as A user.
Trying to create a procedure in the TGT schema by reference to a table in the TSG scheme.
I can select directly from the table as
Select count (*) from STG. TABLE1; by logging in as A USER.
The foregoing, works very well and gives the result set.
But when I try to create a procedure such as
create or replace procedure TGT.delme as
number of v_cnt;
Start
Select count (*) in the v_cnt of ILI. TABLE1;
dbms_output.put_line (' the number is: ' | v_cnt);
end;
/
Compilation error, he throws as "PL/SQL: ORA-00942 table or view does not exist.
Please let me know the reason. Thank you.Hello
You must grant certain privileges on STG. Table1 directly to the TGT, which is you can't give them a role, and then grant the role of TGT. For PL/SQL to access an object code, privs must be granted directly. So, at some point, you'll need to issue
GRANT SELECT ON STG.TABLE1 TO TGT /
and you will need to either make connected to stg or connected as another user with permissions for this...
HTH
David
-
Hi all
I'm new to this forum. I'm having a problem here. I'm looking for a table. I know not under what user the table is created. I'm able to query the table, but when I query the dba_tables I can't find the table that's weird. Please help me find the table
SQL > select user_id, username, account_status from dba_users where as username
' *'% EDAA_USER % '; *
USER_ID ACCOUNT_STATUS USERNAME
111 EDAA_USER OPEN
SQL > select * from dba_tables where owner = 'EDAA_USER' and table_name = ' CLM_DE
NT_HEADER';
no selected line
SQL > desc edaa_user.clm_dent_header
Name Null? Type
ACCUM_UPDT VARCHAR2 (3)
ALT_ID VARCHAR2 (27)
AMOUNT_PAID NUMBER (10.2)
CAT_NUM VARCHAR2 (3)
CERT_NO VARCHAR2 (9)
CHECK_NO VARCHAR2 (9)
CHECK_AMT NUMBER (10.2)
CHECK_DATE DATE
CHECK_STATUS VARCHAR2 (6)
CHECK_STATUS_DESC VARCHAR2 (200)
CLAIM_NO VARCHAR2 (12)
CLM_DENT_HEADER_KEY NOT NULL NUMBER (38)
CLAIM_STATUS VARCHAR2 (12)
CLAIM_STATUS_DESC VARCHAR2 (200)
REC_CODE VARCHAR2 (2)
COINS_AMT NUMBER (10.2)
COPAY_AMT NUMBER (10.2)
DATE OF CHECK_CASHED_DATE
DATE OF SETTLED_DATE
DEDUCTIBLE_AMT NUMBER (10.2)
E_DOC_FLAG VARCHAR2 (3)
START_DATE DATE
GROUP_NO VARCHAR2 (8)
INTEREST_PAID NUMBER (7.2)
END_DATE DATE
LETTER_CODE VARCHAR2 (6)
LETTER_DESC VARCHAR2 (200)
MBR_DEMO_KEY NUMBER (38)
NEA_ID VARCHAR2 (15)
NOTES VARCHAR2 (4000)
PAR_NON_PAR_IND VARCHAR2 (3)
PAR_NON_PAR_IND_DESC VARCHAR2 (200)
DATE OF MBR_DOB
MBR_FIRST_NM VARCHAR2 (30)
MBR_LAST_NM VARCHAR2 (30)
PAID_TO VARCHAR2 (3)
PAY_TO_NUM VARCHAR2 (13)
PAY_TO_DESC VARCHAR2 (30)
PAY_TO_SUFFIX VARCHAR2 (4)
PROC_BY_ID VARCHAR2 (3)
PRV_FIRST_NM VARCHAR2 (12)
PRV_DEMO_KEY NUMBER (38)
PRV_LAST_NM VARCHAR2 (20)
PRV_NO VARCHAR2 (13)
QC_FLAG VARCHAR2 (3)
DATE OF RECEIVED_DATE
NOTE VARCHAR2 (240)
DATE OF STATUS_DATE
SUPR_ID VARCHAR2 (3)
TAX_NO VARCHAR2 (9)
TOTAL_ALLOWED NUMBER (10.2)
TOTAL_CHARGE NUMBER (8.2)
DATE OF UPDATE_DATE
CHEST X-RAY: NUMBER (2)
SRC_SYS_ID NOT NULL NUMBER (38)
BATCH_ID NOT NULL NUMBER (38)
ETL_DATE_CREATED NOT NULL DATE
ETL_DATE_UPDATED NOT NULL DATE
DATE OF ETL_DATE_DELETEDTry this query:
Select * from dba_objects where owner = 'EDAA_USER' and object_name = "CLM_DENT_HEADER";
-
I am creating a web development environment that has the same platform of LAMP as my production server to minimize the conflicts of the possibility. The production server has been implemented with Apache with PHP 7.0.2 Update 2.4.18, installed and running.
I have everything installed in/usr/local from sources on the production server (AWS EC2 running Linux). I'm trying to repeat the process on the Macbook Pro under OS X 10.11.3. So far, I got no problem with compiling, installing and loading of the mysql servers both httpd.
I am able to compile PHP7 without errors. I installed FreeType 2.6.2 and 9B LibJPEG, libPNG 1.6.21 in/usr/local and compiled PHP with the following configuration:
. / configure-prefix = / usr/local-with-config-file-path = / usr/local/etc-with-config-file-scan-dir = / usr/local/etc/php-with-apxs2 = / usr/local/bin/apxs-enable-calendar-enable-cli-enable-exif-enable-ftp-enable-pcntl-enable-shmop-enable-sockets-enable-wddx-enable-zip-with-bz2-with-curl--with-gd-with-freetype-dir = / usr/local-with-jpeg-dir = / usr/local-with-png-dir = / usr/local-with-imap-ssl-with-mysqli = mysqlnd--with-mysql-sock=/tmp/mysql.sock - with-openssl-with-openssl-dir = / usr/local-with-pdo-mysql = mysqlnd - with-pear - with-libedit - with-xsl - with-zlib
PHP compiles and installs without error. The CLI binary answers without error:
$ php - v
PHP 7.0.2 (cli) (built: 6 February 2016 22:02:36) (NTS)
Copyright (c) 1997-2015 the PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
However, when I try to load Apache, I get an error:
$ sudo/usr/local/sbin/apachectl t
httpd: syntax on line 150 of /usr/local/etc/httpd.conf error: cannot load libexec/libphp7.so into server: dlopen (/ usr/local/libexec/libphp7.so, 10): symbol not found: __cg_jpeg_resync_to_restart\n referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib \n expected: /usr/local/lib/libjpeg.9.dylib\n to /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
Based on the contribution of the research on Google, I modified the file/usr/local/sbin/envvars and /usr/local/sbin/envvars-std.
Originally:
If test "x$ DYLD_LIBRARY_PATH"! = « x » ; then
DYLD_LIBRARY_PATH = "" / usr/local/lib: $DYLD_LIBRARY_PATH ""
on the other
DYLD_LIBRARY_PATH = ' / usr/local/lib '.
FI
Under the direction of:
If test "x$ DYLD_LIBRARY_PATH"! = « x » ; then
DYLD_LIBRARY_PATH = ' / usr/local/lib '.
on the other
DYLD_LIBRARY_PATH = ' / usr/local/lib '.
FI
Export DYLD_LIBRARY_PATH
Based on more googling, I ran otools on the binaries to try to ascertain where libTIFF.dylib is referenced.
$ otool-L /usr/local/libexec/libphp7.so
/usr/local/libexec/libphp7.so:
/usr/local/lib/libaprutil-1.0.dylib (compatibility version 6.0.0 latest version 6.4.0)
/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, latest version 8.0.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, latest version 7.0.0)
/usr/local/lib/libapr-1.0.dylib (compatibility version 6.0.0 latest version 6.2.0)
/usr/lib/libSystem.B.dylib (version 1.0.0 of compatibility, the current version 1226.10.1)
/usr/lib/libz.1.dylib (version 1.0.0 compatibility, latest version 1.2.5)
/usr/lib/libexslt.0.dylib (version 9.0.0 of compatibility, the current version 9.15.0)
/usr/lib/libresolv.9.dylib (version 1.0.0 compatibility, latest version 1.0.0)
/usr/lib/libedit.3.dylib (version 2.0.0 compatibility latest version 3.0.0)
/usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0 latest version 5.4.0)
/usr/local/lib/libpng16.16.dylib (version compatibility, the current version 38.0.0 38.0.0)
/usr/local/lib/libjpeg.9.dylib (compatibility version 12.0.0, latest version 12.0.0)
/usr/lib/libcurl.4.dylib (compatibility version 7.0.0, latest version 8.0.0)
/usr/lib/libbz2.1.0.dylib (version 1.0.0 compatibility, latest version 1.0.5)
/usr/lib/libxml2.2.dylib (version 10.0.0 compatibility, the current version 10.9.0)
/ usr/lib/libicucore. A.dylib (version 1.0.0 of compatibility, the current version 55.1.0)
/usr/local/lib/libfreetype.6.dylib (version compatibility, the current version 19.2.0 19.0.0)
/usr/lib/libxslt.1.dylib (version 3.0.0 of compatibility, the current version 3.26.0)
$ otool-L /usr/local/lib/libjpeg.9.dylib
/usr/local/lib/libjpeg.9.dylib:
/usr/local/lib/libjpeg.9.dylib (compatibility version 12.0.0, latest version 12.0.0)
/usr/lib/libSystem.B.dylib (version 1.0.0 of compatibility, the current version 1226.10.1
I am at a loss. I don't see how and where libTIFF.dylib system is referenced, and what I can do to fix this so PHP7 compiles purely against the library libjpeg in/usr/local.
Any help and guidance will be greatly appreciated.
You will have a much better chance to get this stuff free to work if you are using a build system such as 'MacPorts,' 'HomeBrew', or 'Fink '. You will also have access to mailing lists where you might find others who have solved the same problem you have. There is virtually no chance of finding someone like that here.
-
650 HPprobook: page not found
Hi just recently, I uninstalled Crome as I don't really use it but when that I start a blank page opens with the new tab at the top left and I think that its to do with chromium, also after some time when I try to open some of my Windows I get a "page not found" (by bing) now I have not bing or chrome , and the only way around it is to restart my PC any ideas please
niloc wrote:
now when I select a tile, I get the page not found
It is a browser problem and not something that HP can do about windows. Looking on google on how to reset your browser page or homepage?
-
Column not found error while Mrna an oracle with ODI user table
Hello
I'm trying to fill a column in an oracle table with the USER name of the ODI by using the function getUser ("USER_NAME") in the column mapping of the Interface, but the interface throwhing an error * column not found: supervisor in training [Select...] *. but it works very well with getUser("I_USER') column is of the filling of the user ID.
can someone help me why the user is not filling.
Thank youJoin the call to the api getUser inside single quotes
'<%=getUser("USER_NAME")%>'
ID is a number can be used directly but USER_NAME returns a string which should be enclosed in quotes
-
Open sys_refcursor to select from the table variable?
Hello
I have a challenge for you! :-)
I have a procedure that has a lot of logic to determine which data should be loaded into a table variable. Because of various constraints of the application, I can't create a global temporary table. Instead, I would like to create a table variable and fill with stuff that I go through the procedure.
The final outcome of the procedure is that I must be able to pass the results as a sys_refcursor. It is a requirement that is beyond my control as well.
Is there a way to do this kind of work of the procedure?
Create Or Replace procedure Xtst
(
Mu_Cur in the Sys_Refcursor
)
Is
Type Xdmlrectype is Record (Col1 Varchar2 (66));
Type Xdmltype is Table of Xdmlrectype;
RTN Xdmltype;
Begin
Internal_Id Select Bulk collect into Rtn of Zc_State;
Open mu_cur to select table col1 (rtn);
end;
/
---
11/42 PLS-00642: types of local collections not allowed in SQL queries
11/36 PL/SQL: ORA-22905: cannot access the rows of a table not nested element
11/19 PL/SQL: statement ignored
Display errors;Not something I would personally like to implement.
But for educational purposes only of course...
create table this_will_be_gross ( column1 number, column2 varchar2(30) ); insert into this_will_be_gross values (1, 'begin the ugliness'); insert into this_will_be_gross values (2, 'end the ugliness'); variable x refcursor; ME_XE? declare Rtn sys.ODCIVARCHAR2LIST; BEGIN SELECT column1 || '-' || column2 Bulk Collect INTO Rtn FROM this_will_be_gross; OPEN :x FOR SELECT regexp_substr (column_value, '[^-]+', 1, 1) as column1, regexp_substr (column_value, '[^-]+', 1, 2) as column2 FROM TABLE(CAST(rtn AS sys.ODCIVARCHAR2LIST)); end; 17 / PL/SQL procedure successfully completed. Elapsed: 00:00:00.09 ME_XE? ME_XE?print :x COLUMN1 COLUMN2 ------------------------------ ------------------------------ 1 begin the ugliness 2 end the ugliness 2 rows selected. Elapsed: 00:00:00.11
In the above example I have "know" that a hyphen was a safe character to use to break my data items (as could not find anywhere in the data itself).
I strongly encourage you don't not to implement something like this. I know it's tempting when you work in harsh environments where it may take a serious battle to get structures such as temporary tables or the SQL Types created, but it is really the right way to do it.
-
Accelerate the selection * of a table
Hi all
OS: RHEL
DB: 11 gR 2
Is it possible that we can accelerate the selection * of a table?
Kind regards
$phinx19 wrote:
Hi all
OS: RHEL
DB: 11 gR 2
Is it possible that we can accelerate the selection * of a table?
Kind regards
# If it is everything you write, you get a full table scan independently of all the indexes that exist on this table:
SQL > create table (yazflutt)
snorm number 2.
3 gleezle varchar2 (40),
date of Halloween 4,
Number 5 art);
Table created.
SQL >
SQL > start
2 for i in 1.10000 loop
3. insert into yazflutt
4 values (i, 'pourles yinko' |) I |'! (', sysdate - I, i);
5 end of loop;
6
7 validation;
8 end;
9.
PL/SQL procedure successfully completed.
SQL >
SQL > set autotrace on
SQL >
SQL > select * from yazflutt;
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
yinko 567 567 pourles! 15 APRIL 14 567
yinko 568 568 pourles! 14 APRIL 14 568
...
9982 yinko 9982 pourles! 5 JULY 88 9982
9983 pourles yinko 9983! 4 JULY 88 9983
9984 yinko 9984 pourles! 3 JULY 88 9984
9985 pourles yinko 9985! 2 JULY 88 9985
9986 yinko 9986 pourles! 1 JULY 88 9986
9987 yinko 9987 pourles! 30 JUNE 88 9987
9988 yinko 9988 pourles! 29 JUNE 88 9988
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
9989 yinko 9989 pourles! 9989 JUNE 28, 88
yinko 9990 9990 pourles! JUNE 27 88 9990
9991 yinko 9991 pourles! 9991 26 JUNE 88
9992 yinko 9992 pourles! 25 JUNE 88 9992
9993 yinko 9993 pourles! 9993 JUNE 24, 88
9994 yinko 9994 pourles! 23 JUNE 88 9994
9995 pourles yinko 9995! 9995 22 JUNE 88
yinko 9996 9996 pourles! JUNE 21 88 9996
9997 yinko 9997 pourles! 20 JUNE 88 9997
9998 pourles yinko 9998! 9998 19 JUNE 88
yinko 9999 9999 pourles! 18 JUNE 88 9999
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
10000 pourles 10000 yinko! JUNE 17, 88 10000
10000 selected lines.
Execution plan
----------------------------------------------------------
Hash value of plan: 2573332187
------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 10000 | 556K | 10 (10) | 00:00:01 |
| 1. TABLE ACCESS FULL | YAZFLUTT | 10000 | 556K | 10 (10) | 00:00:01 |
------------------------------------------------------------------------------
Note
-----
-the dynamic statistics used: dynamic sampling (level = 2)
Statistics
----------------------------------------------------------
9 recursive calls
0 db block Gets
795 consistent gets
0 physical reads
0 redo size
488545 bytes sent via SQL * Net to client
7877 bytes received via SQL * Net from client
668 SQL * Net back and forth to and from the client
0 sorts (memory)
0 sorts (disk)
10000 rows processed
SQL >
SQL > set autotrace off
SQL >
SQL > create index yazflutt_idx1 on yazflutt (snorm);
The index is created.
SQL >
SQL > create index yazflutt_idx2 on yazflutt (gleezle);
The index is created.
SQL >
SQL > create index yazflutt_idx3 on yazflutt (hopple);
The index is created.
SQL >
SQL > create index yazflutt_idx4 on yazflutt (art);
The index is created.
SQL >
SQL > exec dbms_stats.gather_table_stats (user, 'YAZFLUTT',-online true waterfall, estimate_percent-online null)
PL/SQL procedure successfully completed.
SQL >
SQL > set autotrace on
SQL >
SQL > select * from yazflutt;
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
yinko 567 567 pourles! 15 APRIL 14 567
yinko 568 568 pourles! 14 APRIL 14 568
yinko 569 569 pourles! APRIL 13, 14 569
...
9983 pourles yinko 9983! 4 JULY 88 9983
9984 yinko 9984 pourles! 3 JULY 88 9984
9985 pourles yinko 9985! 2 JULY 88 9985
9986 yinko 9986 pourles! 1 JULY 88 9986
9987 yinko 9987 pourles! 30 JUNE 88 9987
9988 yinko 9988 pourles! 29 JUNE 88 9988
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
9989 yinko 9989 pourles! 9989 JUNE 28, 88
yinko 9990 9990 pourles! JUNE 27 88 9990
9991 yinko 9991 pourles! 9991 26 JUNE 88
9992 yinko 9992 pourles! 25 JUNE 88 9992
9993 yinko 9993 pourles! 9993 JUNE 24, 88
9994 yinko 9994 pourles! 23 JUNE 88 9994
9995 pourles yinko 9995! 9995 22 JUNE 88
yinko 9996 9996 pourles! JUNE 21 88 9996
9997 yinko 9997 pourles! 20 JUNE 88 9997
9998 pourles yinko 9998! 9998 19 JUNE 88
yinko 9999 9999 pourles! 18 JUNE 88 9999
SNORM GLEEZLE HALLOWEEN ART
---------- ---------------------------------------- --------- ----------
10000 pourles 10000 yinko! JUNE 17, 88 10000
10000 selected lines.
Execution plan
----------------------------------------------------------
Hash value of plan: 2573332187
------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 10000 | 341K | 10 (10) | 00:00:01 |
| 1. TABLE ACCESS FULL | YAZFLUTT | 10000 | 341K | 10 (10) | 00:00:01 |
------------------------------------------------------------------------------
Statistics
----------------------------------------------------------
1 recursive calls
0 db block Gets
725 consistent gets
0 physical reads
0 redo size
488545 bytes sent via SQL * Net to client
7877 bytes received via SQL * Net from client
668 SQL * Net back and forth to and from the client
0 sorts (memory)
0 sorts (disk)
10000 rows processed
SQL >
SQL > set autotrace off
SQL >
Whatever the index in place a ' select * ' makes a full table scan, period. Unless you can optimize your storage space, memory, or even use version 11.2 laters results cache and there is not a lot you can do.
David Fitzjarrell
-
Hi all
Oracle version: 11g.
I know how the global temporary table in Oracle. But I've never heard of local temporary tables. I e cam all over and I tried to create one by Googling. But could not create.
The syntax I used is,
DECLARE LOCAL TEMPORARY TABLE test_sk5 (col1 number, col2 NUMBER);
Can you please shed some light on local temporary tables.
THX & regards,.
Shan.
Everything you have found by Google (it would have been helpful if you showed us the real link) is not for Oracle.
So I will throw the light: they do not exist
Edit: when I google for 'local temporary table oracle', I found a thread on this same site where someone asked the same question with the same type of example and got the same answer, the additional information that the syntax is apparently from RDB.
-
Cannot modify a column that is mapped to a table not preserved key
I use Oracle 12 c.
I get this error in updating the column in a TWG.
Scripts to create the TWG, TABLE & Qry Oracle is provided below.
GLOBAL TEMPORARY TABLE
GLOBAL TEMPORARY TABLE
CREATE GLOBAL TEMPORARY TABLE ROAD ( SNO NUMBER(5, 0) , ROADID NUMBER(5, 0) NOT NULL , ROADNAME VARCHAR2(50 CHAR) , ROADSC VARCHAR2(10 CHAR) , SUBAREAID NUMBER(5, 0) , AREAID NUMBER(5, 0) , SEQNO NUMBER(5, 0) , SEQNOCUR NUMBER(5, 0) , ADDEDIT VARCHAR2(1 BYTE) , ISBULK NUMBER(1, 0) , ROWNO NUMBER(5, 0) , ERROR VARCHAR2(200 BYTE) , COMPID NUMBER(5, 0) , CONSTRAINT ROAD_PK PRIMARY KEY ( ROADID ) USING INDEX ( CREATE UNIQUE INDEX ROAD_PK ON ROAD (ROADID ASC) NOPARALLEL ) ENABLE ) ON COMMIT DELETE ROWS;
TABLE MROAD
CREATE TABLE MROAD ( ROADID NUMBER(10, 0) NOT NULL , ROADNAME VARCHAR2(50 CHAR) , SUBAREAID NUMBER(10, 0) , AREAID NUMBER(10, 0) , SEQNO NUMBER(10, 0) , ROADSC VARCHAR2(10 CHAR) , COMPID NUMBER(10, 0) , CONSTRAINT MROAD_PK PRIMARY KEY ( ROADID ));
CREATE PROCEDURE
PROCEDURE ROAD_SAVE_NEW( v_Data XMLTYPE DEFAULT NULL) IS v_CompID NUMBER(5):= 0; rc sys_refcursor; BEGIN INSERT INTO Road ( SNO , ROADID , ROADNAME , ROADSC , SUBAREAID , AREAID , SEQNO , SEQNOCUR , ADDEDIT , ISBULK , COMPID ) SELECT Row_Number() OVER(ORDER BY 1) SNo , XT.* , v_CompID FROM XMLTABLE('/QueryParam/RoadXML/Road' PASSING v_SPParamList COLUMNS "RoadID" NUMBER(5) PATH 'RoadID', "RoadName" VARCHAR2(50) PATH 'RoadName', "RoadSC" VARCHAR2(10) PATH 'RoadSC', "SubAreaID" NUMBER(5) PATH 'SubAreaID', "AreaID" NUMBER(5) PATH 'AreaID', "SeqNo" NUMBER(5) Path 'SeqNo', "SeqNoCur" NUMBER(5) Path 'SeqNoCur', "AddEdit" VARCHAR2(1) PATH 'AddEdit', "IsBulk" NUMBER(1) PATH 'IsBulk') XT; UPDATE (SELECT B.ERROR ERROR_0 FROM MROAD A INNER JOIN Road B ON A.RoadID != B.RoadID AND A.RoadSC = B.RoadSC AND A.RoadSc != '' ) SET ERROR_0 = 'R114|Short Code Already Exist'; END ROAD_SAVE_NEW;
APPEAL PROCEDURE
DECLARE xmlData XMLTYPE := XMLTYPE('<QueryParam> <RoadXML> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[SP]]></RoadSC> <RoadName><![CDATA[6th A Road]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>true</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[RR]]></RoadSC> <RoadName><![CDATA[Sojati Gate Bari]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>true</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[CR]]></RoadSC> <RoadName><![CDATA[6th A Road]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>true</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[TR]]></RoadSC> <RoadName><![CDATA[TripoliyaRoad]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>true</IsBulk> <AddEdit>A</AddEdit> </Road> </RoadXML> </QueryParam>'); BEGIN ROAD_SAVE_NEW( v_Data => xmlData ); END;
I Know Oracle applies UJVC on update on view joined queries.
This is the result I get in mssql
How do I do this in Oracle.
Found the answer:
CREATE OR REPLACE PROCEDURE proc_RoadSave AS xmlData XMLTYPE := XMLTYPE.CreateXML( '<QueryParam> <RoadXML> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[SP]]></RoadSC> <RoadName><![CDATA[6th A Road]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>1</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[RR]]></RoadSC> <RoadName><![CDATA[Sojati Gate Bari]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>1</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[CR]]></RoadSC> <RoadName><![CDATA[6th A Road]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>1</IsBulk> <AddEdit>A</AddEdit> </Road> <Road> <RoadID>0</RoadID> <AreaID>94</AreaID> <SubAreaID>3</SubAreaID> <RoadSC><![CDATA[TR]]></RoadSC> <RoadName><![CDATA[TripoliyaRoad]]></RoadName> <SeqNo>0</SeqNo> <SeqNoCur>0</SeqNoCur> <IsBulk>1</IsBulk> <AddEdit>A</AddEdit> </Road> </RoadXML> </QueryParam>' ); rc sys_refcursor; BEGIN execute immediate 'truncate table GTT.Road'; INSERT INTO GTT.Road ( SNO , ROADID , ROADNAME , ROADSC , SUBAREAID , AREAID , SEQNO , SEQNOCUR , ADDEDIT , ISBULK , ROWNO , ERROR , COMPID ) SELECT row_number() OVER(ORDER BY 1) Sno , XT.RoadID , XT.RoadName , XT.RoadSC , XT.SubAreaID , XT.AreaID , XT.SeqNo , XT.SeqNoCur , XT.AddEdit , XT.IsBulk , CAST(0 AS NUMBER(5)) ROWNO , CASE WHEN mRoad.RoadID IS NOT NULL THEN CASE WHEN XT.RoadSC = mRoad.RoadSC AND XT.RoadName = mRoad.RoadName THEN 'XXX' WHEN XT.RoadSC = mRoad.RoadSC THEN 'R114|Short Code Already Exist' WHEN XT.RoadName = mRoad.RoadName THEN ',R104|Entry Already Exist' END ELSE NULL END ERROR ,CAST(0 AS NUMBER(10)) COMPID FROM XMLTABLE('/QueryParam/RoadXML/Road' PASSING xmlData COLUMNS RoadID NUMBER(10) PATH 'RoadID', RoadName VARCHAR2(50 CHAR) PATH 'RoadName', SubAreaID NUMBER(10) PATH 'SubAreaID', AreaID NUMBER(10) PATH 'AreaID', SeqNo NUMBER(10) PATH 'SeqNo', RoadSC VARCHAR2(10 CHAR) PATH 'RoadSC', SeqNoCur NUMBER(5) PATH 'SeqNoCur', AddEdit VARCHAR2(1 CHAR) PATH 'AddEdit', IsBulk NUMBER(1) PATH 'IsBulk') XT LEFT JOIN mRoad ON XT.RoadID != mRoad.RoadID AND (XT.RoadSC = mRoad.RoadSC OR XT.RoadName = mRoad.RoadName) AND XT.RoadSC IS NOT NULL; OPEN rc FOR SELECT * FROM GTT.Road Where Error IS NULL; sys.dbms_sql.return_result(rc,TRUE); OPEN rc FOR SELECT * FROM GTT.Road WHERE ERROR IS NOT NULL; sys.dbms_sql.return_result(rc,TRUE); END proc_RoadSave;
Post edited by: Sunil K. I found my answer it is also what I did to solve the problem.
I found my answer, you can see the end of the question where I put the solution.
Thank you everyone who helped or at least tried to help.
Kind regards.
Maybe you are looking for
-
How can I manually add an entry to the file passwords and username registered
If possible, I would like to manually add an entry in the file of saved passwords. I suspect that's not possible, but I thought I'd ask just in case.
-
Said my probook: boot device not found please install operating
My laptop says: not found boot devicePlease install an operating system on your hard driveHard drive (3FO)F2 System DiagnosticsFor more information, please visit: www.hp.com/go/techcenter/startup ------------- I used colonettes-Test HARD drive Option
-
Stop code 0x0000007E installation Win XP
I do a Windows XP installation on the new hard drive in HP Netbook. When installing happen to point to windows that open, it stops and I get the 0x0000007E error message. I restart and stop at the same place. What is the problem?
-
mother of replacement for the eM350 NETBOOK
Hi, I'm new to this forum and I hope you'll forgive me if this question has been asked elsewhere. I have a 2 years old emachine eM350, which worked perfectly until it was some fizzy drink split on it whist, it is on. The motherboard has considerabl
-
my media center worked fine, I added a security update, and now Media center crashes in tv mode. I uninstalled and re installed, it was delivered, so I do not have the disc. I used repair MCE, no luck, I uninstalled all my work of framework and re