plsql

Oracle & Active Directory : A love/hate relationship

Hi SO'ers, I'm currently trying to access Active Directory via the dbms_ldap API in Pl/Sql (Oracle). The trouble is that I'm not able to connect with my own username and password or anynoymously. However, in C# I can connect anonymously with this code : DirectoryEntry ldap = new DirectoryEntry("LDAP://Hostname"); DirectorySearcher sear...

How can I drop a "not null" constraint in Oracle when I don't know the name of the constraint?

I have a database which has a NOT NULL constraint on a field, and I want to remove this constraint. The complicating factor is that this constraint has a system-defined name, and that constraint's name differs between the production server, integration server, and the various developer databases. Our current process is to check in chan...

Select result in single cell

How can i select all id's for records in single cell? For example: --example select of all values select id, name, address, phone from table And get all id's where phone like '%555%' and show them in single field like: '111 123 234 321 231 234' ...

Dropping all user tables/sequences in Oracle

As part of our build process and evolving database, I'm trying to create a script which will remove all of the tables and sequences for a user. I don't want to do recreate the user as this will require more permissions than allowed. My script creates a procedure to drop the tables/sequences, executes the procedure, and then drops the...

Oracle PL/SQL: Dump query result into file

Hi. I'm working on a pl sql stored procedure. What I need is to do a select, use a cursor and for every record build a string using values. At the end I need to write this into a file. I try to use dbms_output.put_line("toto") but the buffer size is to small because I have about 14 millions lines. I call my procedure from a unix ksh. I...

Charater string buffer too small

I have select: select v.accs, v.currency,v.amount,v.drcr_ind, count(*) qua,wm_concat(ids) npx_IDS, wm_concat(px_dtct) npx_DTCT from table v group by accs, currency, amount, drcr_ind but i get error ORA-06502: PL/SQL: : character string buffer too small if i'll remove one string, because sometimes (when v.accs= 3570) count(*) = 215 bu...

Is it possible to write a query which returns a date for every day between two specified days?

Basically, the question says it all. I need a PL\SQL query that returns a list of dates between two dates such that for 01-JAN-2010 to 20-JAN-2010 I would get 20 rows returned: the_date -------- 01-JAN-2010 02-JAN-2010 03-JAN-2010 04-JAN-2010 ... 20-JAN-2010 ...

View a SYS.XMLTYPE returned from an Oracle function, using PL/SQL

I have an Oracle function that dynamically creates an XML document, and returns it in a SYS.XMLTYPE value. I want to run a query from SQL Developer that calls that function and prints the document (either via a select, or dbms_output - I don't care). But all the examples/documentation seem to refer to querying XML columns in tables, an...

Sleep function in ORACLE

I need execute an sql query in ORACLE it takes a certain amount of time. so i wrote this function CREATE OR REPLACE FUNCTION MYSCHEMA.TEST_SLEEP ( TIME_ IN NUMBER ) RETURN INTEGER IS BEGIN DBMS_LOCK.sleep(seconds => TIME_); RETURN 1; EXCEPTION WHEN OTHERS THEN RAISE; RETURN 1; END TEST_SLEEP; and i call in this way ...

Boolean data type size and want to print its value?

I want to know size of data type boolean , i used VSIZE() function but it is not working for boolean and Want to print and store boolean value into table. Please let me know how oracle store boolean value ,is there any other way to see data type and value for boolean variable. Atleast tell me size of boolean i got this error when I ...

Concatenation with Zero is not occurring properly in code?

I was trying to reverse a number in PL/SQL. It's working fine, but when my number contains any 0, the output is unexpected. For example: 1234 output 4321 1000 output 1 1203 ouput 3021 10001 output 1 DECLARE r number(9); num number(9):=&p_num; BEGIN WHILE num>=1 LOOP IF mod(num,10)=0 THEN -- extracting last digit of a nu...

Oracle - pl sql selecting from SYS_REFCURSOR

I have a function that returns a SYS_REFCURSOR that has a single row but multiple columns. What I'm looking to do is to be able to have a SQL query that has nested sub-queries using the column values returned in the SYS_REFCURSOR. Alternative ideas such as types, etc would be appreciated. Code below is me writing on-the-fly and hasn't be...

[Oracle/PHP]Is it possible to pass an array to a PL/SQL procedure?

If it is possible, how does the parameter need to look like in the procedure? And how do you pass an array to a procedure? ...

Dynamic SQL not working as expected

create or replace procedure createtables Authid current_user as begin execute immediate 'create table newcustomer as select * from customer'; end; create or replace procedure e is begin createtables; select * from newcustomer; end; I got two procedures above. first one will create a new tables called newcustomer, second procedu...

How to prevent dbms_output.put_line from trimming leading whitespace?

I am trying to right-align the output of some PL/SQL code, but dbms_output.put_line is trimming the leading whitespace from my strings. How do I make it stop? Or is there a better way to output strings with leading whitespace? dbms_output.put_line(lpad('string', 30, ' ')); outputs: string instead of: string...

DBMS_OUTPUT.NEW_LINE and DBMS_OUTPUT.NEW_LINE() difference?

What is the difference between these two statements? dbms_output.new_line(); // with no parameters. dbms_output.new_line; // with no parameters,no round brackets If there is function overloading,even for that close and open brackets are required after function name. ...

Any suggestions on how to extract 6 million records from an oracle10g ?

I just want to give you a little background Need to write a PL-SQL which will extract 6 million record joining different tables and create a file of that. Need more suggestions, specifically on how to fetch these many records. As fetching these million of records on a single go can be a highly resource intensive. So question is how to ...

How to access Oracle system tables from inside of a PL/SQL function or procedure?

I am trying to access information from an Oracle meta-data table from within a function. For example (purposefully simplified): CREATE OR REPLACE PROCEDURE MyProcedure IS users_datafile_path VARCHAR2(100); BEGIN SELECT file_name INTO users_datafile_path FROM dba_data_files WHERE tablespace_name='USERS' A...

How to loop through columns in an oracle pl/sql cursor.

I am creating a dynamic cursor and I would like to loop over the columns that exist in the cursor. How would I do that? For example: create or replace procedure dynamic_cursor(empid in varchar2, RC IN OUT sys_refcursor) as stmt varchar2(100); begin stmt := 'select * from employees where id = ' || empid; open RC for...

Compare values in each column of two Oracle Types

I've been playing around with the pluto-test-framework today, and I'd like to get some existing functions into a test harness with it. I have lots of functions with this type of specification. FUNCTION DO_SOME_STUFF (pOldSchedule IN SCHEDULE_OBJ, pNewSchedule OUT SCHEDULE_OBJ, ...