Is there another of MSAD PL/SQL package, regarding the DBMS_LDAP LDAP

I want to connect to MSAD of DB Oracle using PL/SQL.
Let me rephrase my question, I want to connect and search querry on MSAD sever in PL/SQL Oracle DB. Is this possible? I am able to do similar for "Sun One LDAP" by loading the DBMS_LDAP package in Oracle DB. In seeking a similar link with MSAD, I get errors for Invalid Credentials. So, I wanted to confirm whether what I'm doing is correct. Weather using the DBMS_LDAP package I can connect and perform searches MSAD also.

Published by: user784520 on December 2, 2009 05:13

user784520 wrote:
Let me rephrase my question, I want to connect and search querry on MSAD sever in PL/SQL Oracle DB. Is this possible?

Yes. We use DBMS_LDAP widely enough in interface with the domain controllers Microsoft Active Directory (for both authentication and querying data DN) running.

LDAP is also pretty much a standard protocol - which means on the client side is should not really matter if the LDAP server is a product of the ABC vendor or seller + 123 +.

Tags: Database

Similar Questions

  • Need to call the PL/SQL Package in the group dynamics of approval class that implements IDynamicApprovalGroup

    Hi all

    This is regarding the approval of invoice AP I need in my project where the user selects the users/people approval when creating the invoice based on logic. There may be any number of users who could be part of the approval group.

    Approval users information is stored in a table with a single Bill.

    When the user initiates invoice approval, approval of the Bill should go to all the people/users selected in the invoice.

    I created the dynamic of approval group which is the result of a java class. This java class implements IDynamicApprovalGroup. (what is the oracle Developer Guide).

    I called PL/SQL to java class package to get all the details of users of custom for the current invoice table.

    I used the DriverManager.getConnection method by hard coding (JDBC URL, Username, Pwd) connection details that works perfectly fine.

    But I don't want to hard-code the connection details because it will change in bodies SIT/UAT/PROD.

    Please ask you to guide me if there is no solution for the information of connection without hard coding it.

    Following code used to get the connection details

    try {}

    Class.forName ("oracle.jdbc.driver.OracleDriver");

    System.out.println ("= class loaded");

    }

    catch (ClassNotFoundException ex) {}

    System.out.println ("= class loading error");

    ex.printStackTrace ();

    }

    Fitting out = null;

    CallableStatement cstmt = null;

    Try

    {

    connection = DriverManager.getConnection ("jdbc:oracle:thin:@xxhostname:1521/SID", "FUSION", "*");

    Connection = GetConnection ();

    System.out.println ("= connection =" + connection);

    prepare the call

    cstmt = connection.prepareCall ("{call XX_AP_INV_DYN_APPROVAL_PKG. {GET_GROUP_PARTICIPANTS (?,?)} ») ;

    cstmt.setString (1, '12345');   ID on invoice

    Exit of the register

    cstmt.registerOutParameter (2, java.sql.Types.VARCHAR);

    Call the stored procedure

    cstmt. Execute();

    System.out.println ("= procedure being executed");

    approvalGroupMembers = cstmt.getString (2).split("#");

    System.out.println ("= output:" + cstmt.getString (2));

    }

    catch (Exception ex) {}

    ex.printStackTrace ();

    }

    Finally

    {

    Try

    {

    If (cstmt! = null)

    close the callable statement

    {

    cstmt. Close();

    cstmt = null;

    }

    System.out.println ("= stmt closed");

    }

    catch (SQLException ex)

    {

    System.out.println ("= stmt close err");

    ex.printStackTrace ();

    }

    Try

    {

    If (connection! = null)

    close the connection

    {

    Connection.Close;

    connection = null;

    }

    System.out.println ("= closed conn");

    }

    catch (SQLException ex)

    {

    System.out.println ("= Close conn err");

    ex.printStackTrace ();

    }

    }

    Thank you

    Dipak.

    HI Dembélé - you should be able to call the provider database from the java class. Documentation is here. However, you need to specify the name of the data provider that is the same in all environments. Do you know what it is? If it's not I'll take a look and get back to you.

    __

    Peter Maurer

    Relationship with the developers of Applications in fusion

    https://blogs.Oracle.com/fadevrel/

  • Are constants of body of the PL/SQL Package in the shared or private area

    Based on that it is not clear to me if body Package PL/SQL constants are stored in the shared or private area.

    http://docs.Oracle.com/CD/B28359_01/server.111/b28318/memory.htm

    "PL/SQL program units and the Shared Pool

    Oracle database treats PL/SQL program units (anonymous blocks, procedures, functions, packages and triggers in database) much the same way he treats the individual SQL statements. Oracle database allocates a shared area to hold the shape analyzed, compiled a program unit. Oracle database allocates a private space to hold values specific to the session who runs the program unit, including local, global and package variables (also known as the package is instantiated) and stamps of SQL execution. If more than one user is running the same program unit, a place unique and shared is used by all users, while each user runs a separate copy of his own private SQL area containing session-specific values.

    The individual SQL statements contained in a PL/SQL program unit are processed as described in the previous sections. Despite their origins within a PL/SQL program unit, these SQL statements use a shared area to hold their analysed representations and a private space for each session, who executes the statement. »


    I am also curious to know what are the differences in fine grain in a perspective of memory and performance (multisession) for the two examples below. One is more effective?


    Example 1.

    create or replace
    package body
    application_util
    as

    c_create_metadata constant varchar2 (6000): =...

    procedure process_xxx
    (
    )
    as
    Start
    ...
    end process_xxx;

    end application_util;

    vs.

    Example 2.

    create or replace
    package body
    application_util
    as

    procedure process_xxx
    (
    )
    as

    c_create_metadata constant varchar2 (6000): =...

    Start
    ...
    end process_xxx;

    end application_util;

    881398 wrote:

    But I still have to ask because it seems still more particularly in example 1 that the constant can be attributed to the use that the actual value could be a pointer to a constant string value in a table of symbols or something related to the compilation unit. I'm always curious in a perspective of management of memory if there is a difference between the example 1 and example 2, and if one is better and why.

    The storage is real, references to this storage internal to the PL/SQL engine. And irrelevant to the PL/SQL programmer.

    This question is really a disagreement over the shape is better: example 1 or example 2. I prefer the 1 example, for readability, testability, etc., and so the question is where is the performance of the memory/differences and or is it just preference of developer.

    I agree with rp0428 - he raised a very important point that it is a problem of scope and nothing else.

    Basically is there any trade-off between using one shape on the other insofar as the performance and memory management?

    Not really. Most runtime engines release not just actual system memory when a variable is out of range. the malloc() calls are expensive. Free() calls are expensive (and are not always the result in usable free memory which can be malloc'ed again).

    Several execution engines use what is called a managed heap. A malloc is made of a new process when it is initialized. The heap memory / managed malloc'ed is adjacent. Pointer allocation of memory for this process is initially pointing to the base of the managed heap. As the process allocates / uses memory, the pointer is moved just advance in the managed heap, which indicates the HWM as such - the beginning of the 'free' memory in the heap. Allocation is sequential.

    Reset of your variable execution, or releasing your runtime object, does not reset the HWM as other objects/variables can still be used and located after this place in the bunch. In this case set him free memory by releasing / resetting the language variables does not restore the kernel memory.

    Memory management is a sophisticated process entirely processed by the engine running - and best left to the runtime engine. As you as a programmer do not explicitly control the memory management, it is not a good idea to try to write code that artificially attempt to use 'better' for the runtime engine memory management. The next version of the runtime of that aura of new features, optimizations and so on — and your interference in your code to get the "valorisation" of memory can happen just bite you not bad after an upgrade to execution.

    Regarding the performance aspect - variable initialization is dependent on scope. In order to have a global scope means a one-time initialization, whereas a private scope (created each call) is a multiple unit. If the first is a little faster than the latter.

    However, the performance differences are tiny - IMO too small to justify this as a valid consideration to spend in addition to the decision of functional design on what possibilities a variable or a constant need to have.

    SQL> create or replace package FooLib1 as
      2          procedure Exec;
      3  end;
      4  /
    
    Package created.
    
    SQL>
    SQL> create or replace package body FooLib1 as
      2          const1  constant varchar2(32767) := rpad('-',10000,'-');
      3
      4          procedure Exec is
      5                  var1    varchar2(32767);
      6          begin
      7                  var1 := const1;
      8          end;
      9  end;
     10  /
    
    Package body created.
    
    SQL>
    SQL>
    SQL> create or replace package FooLib2 as
      2          procedure Exec;
      3  end;
      4  /
    
    Package created.
    
    SQL>
    SQL> create or replace package body FooLib2 as
      2          procedure Exec is
      3                  const1  constant varchar2(32767) := rpad('-',10000,'-');
      4                  var1    varchar2(32767);
      5          begin
      6                  var1 := const1;
      7          end;
      8  end;
      9  /
    
    Package body created.
    
    SQL>
    SQL> set timing on
    SQL> exec for i in 1..100000 loop FooLib1.Exec; end loop;
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.28
    SQL> exec for i in 1..100000 loop FooLib2.Exec; end loop;
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.74
    SQL> 
    

    A second difference 0.0000046 in a single execution for FooLib.Exec between the use of package for the constant scope, against increased private. Which means that the issue of the scope is not a decision of the performance. Not when improving performance overhead is 0,0046 millisecs.

  • haven't bought an adobe photoshop elements DVD but they have no insert DVD in my computer. Is there another way to install?

    haven't bought an adobe photoshop elements DVD but they have no insert DVD in my computer. Is there another way to install?

    Copy the DVD to a USB key (on another computer) and install on your computer.

  • How to make SQL * more count the comment and blank line numbers?

    Hello

    Parameter
    Value of the parameter
    Oracle versionEnterprise Edition Release 11.2.0.1.0 - 64 bit
    OPERATING SYSTEMLinux Fedora Core 17 (X86_64)

    I would like to know, is it possible to force SQL * Plus to provide the number of the current in the source file line whenever there is an error? I often put in the first line of my script SQLBLANKLINES the VALUE ON that I may be able to put several consecutive blank lines in my code (I do that sometimes, when I find that it is appropriate to make my code more readable or a sequence of instructions which I believe make their logic more comprehensible for the reader of the Group)

    Now the problem is that SQL * Plus will ignore these empty lines and whenever there is an error, the line number in the error message does not match the actual line number in the source file, but it seems to be the last non-empty line in the file.  Consider the following example:

    SET SQLBLANKLINES ON;

    DECLARE
        var PLS_INTEGER := 10;
    BEGIN


       
        var := 20
    END;
    /

    In the code above on line 9 (also counting blank lines), there is an error (no semicolon at the end of the var: = 20) but when I run the script

    SQL * also, here is the error message I get


    SQL > @myscript.sql;

    END;

    *

    ERROR on line 8:

    ORA-06550: line 8, column 1:

    PLS-00103: encountered the symbol "END" when expected in the following way:

    * & = - + ; <>/ is mod remains not rem

    < an exponent (*) > <>or! = or ~ = > = < = <>and like2 or

    like4 likec between | submultiset of type multiset Member

    The symbol ';' was replaced by 'END' continue.


    SQL >


    As you can see the error message indicates that the error was found on line 8, while in the file, it's really on line 9

    As long as the number of lines in the script is limited, this may not be a problem and we can quickly find the actual line number in the code that causes the error, but for a code, including hundreds (or even thousands) of lines and with many comments and blank lines, find line number given by SQL * error message more becomes complicated.

    So my question: is it possible to make SQ * more properly draw the line numbers, as they appear in the source file?

    Thanks in advance,

    Kind regards

    Dariyoosh

    Hi, Dariyoosh,

    The line numbers in error messages are always from the beginning of the statement, but not the file.  The back-end which checks the errors and generates the error message, has no idea if this statement has appeared in your file, even if the statement was in a file at all, or if it comes from multiple files, each with its own line 1.

    You can divide your scripts into parts, so that the long statements, which may lead to error messages, are each in a separate file, so the statement starts on the line 1 of the file.

    For example, you can call a script called fubar.sql, which looks like this:

    SET SQLBLANKLINES ON;
    
    @@fubar_1
    

    Which calls another script, called fubar_1.sql, located on the same directory as fubar.sql, that looks like this

    DECLARE
        var PLS_INTEGER := 10;
    BEGIN
    
        var := 20
    END;
    /
    

    You never call him directly fubar_1.

  • How remove the toolbar Babylon. Is there another name for "Babylon"? because I don't see a "Babylon" in my control panel, of it being installed? Help

    I would like to get yahoo as my home page. I tried to change, according to the instructions of mozilla. It did not work.
    By mozilla support I uninstall "babylon toolbar". I checked the Panel no Babylon not listed as being installed. My question is there another name for the "babylon toolbar?

    I'm of Babylon business support team. Research of Babylon and the toolbar are supposed to be part of an integrated set of tools that help people understand and explore their world. Sometimes, however, other manufacturers package our tools with their free end of programs and by unexpected people receive our software. We are sorry if this is the case with you and we would be happy to help you remove a part that you can not. Click here for easy removal instructions: http://www.babylon.com/uninstall_search/index , or contact me at [email protected] for more information.

  • Call a pl/sql package unix script

    Hello

    With the help of 11.2.0.3 on AIX.

    Is it possible to call the pl/sql package unix script?

    I am cretaing a file in a directory but would like it to automatically write to a directory to archive as well.

    Could use either 2 utl_file.put_lines to 2 separate directories or 1 utl_file and cal script to archive files in another directory. ?

    Thoughts?

    Thank you

    user5716448 wrote:

    Thoughts?

    Use UTL_FILE. FCOPY copy the file you created in the directory of the archive.

    SY.

  • PL/SQL package, output XML

    Hello

    I'm working on the Pl/sql package to generate the output in xml format using tags XML, but the output is the break with the following error when data have special characters as '& '.

    Error:

    The XML page cannot be displayed
    Cannot view XML input using XSL style sheet. Fix the error and then click the Refresh button, or try again later.

    Whitespace is not allowed at this location. Error processing resource

    I use the <? XML version = "1.0" encoding = "ISO-8859-1? > and even tried "UTF - 8' at the beginning of my xml." Anyone can guide me please how I can handle this.



    Thank you!

    Can you guide me on how I can use CDATA for this specific tag.

    XYZ & Co. Inc.

    SQL> set scan off
    SQL> select xmlelement("CUST_NAME", 'XYZ & Co. Inc') from dual;
    
    XMLELEMENT("CUST_NAME",'XYZ&CO
    --------------------------------------------------------------------------------
    XYZ & Co. Inc
    
    SQL> select xmlelement("CUST_NAME", xmlcdata('XYZ & Co. Inc')) from dual;
    
    XMLELEMENT("CUST_NAME",XMLCDAT
    --------------------------------------------------------------------------------
    
     
    

    -First method automatically escapes the characters not valid and replaces them with their corresponding entity reference
    -Second method encapsulates the data in a CDATA section so that there is no need to escape

    You can build the entire XML document with these functions, that's exactly what they did:

    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e23094/xdb13gen.htm#g1047191

  • Execution of pl/sql Package

    I have a package named "EMP".
    and it contains the package body with two methods named "EMPSALARY" and "EMPDEPT".

    When I try to run the package, I get invalid error as 'sql statement '.

    exec EMP;
    exec EMP. EMPSALARY;
    EXEC EMP. EMPDEPT;

    I tried the above statement one (either a thought works) but nothing works. I get the same error for all.

    Let me know what I am doing wrong.
    Thank you

    user11018028 wrote:
    I run the above in pl/sql

    I don't know that I follow. There is no such thing as "PL/SQL". 'en' implies some sort of customer tool - SQL * Plus, SQL Developer, TOAD, etc..

    and I get the result as "statement processed.

    Ok. If the procedure has been correctly executed.

    The procedure "empdept" did a merge statement in it. When I run this script merger just in pl/sql, I get the message like 99 lines merged.

    I assume you mean that if you run over the SQL MERGE statement in SQL * Plus, you get a message indicating the number of rows processed.

    Is it normal to get two different messages for the same script?

    It is quite normal that a client tool would provide a different output for a SQL statement and a PL/SQL block, Yes. A PL/SQL block can generate thousands of SQL statements to execute in order to get thousands of lines of output would be rather disconcerting.

    Justin

  • JAX - WS WebService on a PL/SQL Package

    Hello
    Does anyone know how to create a Web service from JAX - WS based on a package of pl - sql using JDeveloper 11.1.1.3. This is what JDeveloper cannot consume the wizard generated JAX - RPC style web service based on a PL/SQL package.


    Thank you

    Another question, we can create or have you already tried to create a Web service in the EOs or your at least their implementations of java.

    Service enable your application module and expose the methods you like of your. Read the doc here http://download.oracle.com/docs/cd/E14571_01/web.1111/b31974/bcextservices.htm#CJAJGIEB

    Timo

  • Error with PL/SQL package

    Hello

    I wrote a package specification given below:

    create or replace PACKAGE BILL_PACKAGE AS
    storeId varchar2 (5);
    startDate varchar2 (10);
    FUNCTION boolean RETURN F_Bill (str_id IN tel_tr_ltm_bl_py.id_str_rt%TYPE,ws_id IN tel_tr_ltm_bl_py.id_ws%TYPE,v_date IN tel_tr_ltm_bl_py.dc_dy_bsn%TYPE);
    END BILLPAYPACKAGE;


    I wrote the body of package also. Now when I call the F_Bill function, I get this error:

    PLS-00201: identifier ' BILL_PACKAGE. STARTDATE' must be declared
    ORA-06550: line 2, column 1:
    PL/SQL: Statement ignored
    ORA-06550: line 3, column 1:
    PLS-00201: identifier ' BILL_PACKAGE. STOREID' must be declared
    ORA-06550: line 3, column 1:
    PL/SQL: Statement ignored

    This same package works well on another local data base.

    What could be the reason for this?

    What is an access problem? In db, which we get an error, we use a user "ConUser" to connect to a schema 'b_owner '.

    How can we verify this if it is a question of privilege.

    Thank you!

    >
    ...

    This same package works well on another local data base.

    What could be the reason for this?

    What is an access problem? In db, which we get an error, we use a user "ConUser" to connect to a schema 'b_owner '.

    How can we verify this if it is a question of privilege.

    The 'ConUSer' user needs to execute privileges for the package.
    Also, it depends on what he calls the package or the variables in it.

    You can check the privs with

    select * from all_tab_privs where table_name = 'BILL_PACKAGE';
    

    This must be run as a user ConUser.

    You may also have a problem with name resolution. The package name is not BILL_PACKAGE. It's 'b_owner. BILL_PACKAGE ".
    If you omit the schema name, then the current user is tried. So if you call BILL_PACKAGE, then this translates into "ConUSer.BILL_PACKAGE".

    You can change this by creating a synonym as

    create synonym bill_package for b_owner.bill_package;
    
  • OK to install the pl/sql packages in schema APPS?

    What is the schema supported in which I should create my pl/sql packages used in my data models? I'm in EBS and sown reports such as RAXINV, I converted to XML Publisher.

    I have converted RAXINV works very well under APPS, but now my admin db suggested I should move "customized" packages to a seeded non - EBS schema (for example, XXABC). I have all kinds of problems to do this work.

    When you create the package in another schema, use AUTHID CURRENT_USER.

  • 'DBMS_FGA identifier must be declared' when it is called from PL/SQL package...

    Hello

    I'm calling dbms_fga dynamically (of sorts) of a package, and I get the error according to the title.

    I tried as many ways as I can think this call from another package, with each time similar results.

    The user/owner of the package has rights DBA, so it doesn't seem to be a permissions issue.

    Oracle Version is 11.1.0.6.0 on Suse.

    any ideas on this person?

    See you soon

    CODE:

    Attempt 1:

    PROCEDURE enable_sql_auditing (on_off Boolean false by default) is
    v_ssql varchar2 (900);
    cursor c1 is
    Select table_name
    of all_all_tables
    where owner = gcv_pkg_owner;
    Start
    for rec loop c1
    sys.dbms_fga.add_policy (object_schema = > "| gcv_pkg_owner |",)
    object_name = > "| Rec.TABLE_NAME: ",.
    POLICY_NAME = > "| Rec.table_name | ' _AUDIT "'.
    handler_schema = > "| gcv_pkg_owner: ",.
    handler_module = > 'FGA_SQL ',.
    activate = > true);
    end loop;
    end enable_sql_auditing;


    Attempt 2:

    PROCEDURE enable_sql_auditing (on_off Boolean false by default) is
    v_ssql varchar2 (900);
    cursor c1 is
    Select table_name
    of all_all_tables
    where owner = gcv_pkg_owner;
    Start
    for rec loop c1
    v_ssql: = ' start sys.dbms_fga.add_policy (object_schema = > "' | gcv_pkg_owner |) "', object_name = >"' | Rec.TABLE_NAME | " ', policy_name = > "' | Rec.table_name: "_AUDIT", select = > true); end;';
    run immediately (v_ssql);
    end loop;

    end enable_sql_auditing;

    Frenchwood wrote:
    The user/owner of the package has rights DBA, so it doesn't seem to be a permissions issue.

    But it is.

    DBA is a role.
    in PL/SQL, the permissions must be granted directly, rather than through roles.

    for example, you need to directly grant the Execute permission on the package for the required users.

  • disable hardware acceleration set my image loading problem. is there another way to get around this?

    System details:
    OS: Windows 8.1 Professional (64-bit)
    Graphics card: PNY NVidia GT 610 (2 GB)
    RAM: 5 GB
    Firefox version: 36.0 (32-bit)

    Since yesterday, when the images would load on Web sites, some of them would be entirely black, or black for the most part, with only a piece of the images loaded, only to fully charge a few minutes later.

    Disabling hardware acceleration has solved this problem, but reduces the overall performance of firefox. Is there another way to work around this problem, not to mention that disabling hardware acceleration?

    Note: The only 2 things I have tried have been reset firefox and a new installation of firefox. I don't want to lose my data of the addon and the custom settings of firefox, because it takes too much time for me to put them back where they are now.

    I'm also pretty computer savvy, if you can get quite technical with me. If I don't understand something, I ask.


  • Hello, my phone pulled from my class at school and it has no data on it, so I did not no how to locate without using find my iphone is there another way I could find as soon as possible

    Hello, my phone pulled from my class at school and it has no data on it, so I did not no how to locate without using find my iphone is there another way I could find as soon as possible

    Go to iCloud.com

    Then sign in with your Apple ID and password, then click the Find iPhone.

    If this does not help, see: If find my iPhone is not activated on your missing device > what to do if your iOS device is lost or stolen

Maybe you are looking for