Default schema names in multi-tier landscape

Hi folks,
We have an interesting problem due to having different named default schemas in each of our 3 hana systems.  For example lets say these are our default schemas in our development, staging, and production HANA systems;
DEV_SCHEMA
QA_SCHEMA
PROD_SCHEMA
Each of these replicating data from their corresponding SAP source systems.
Now, we have a view that is developed on DEV hana box and uses DEV_SCHEMA.  When this view content is imported to QA or PROD we handle easily with schema mapping.  All is well and good although we are not really a fan of this different naming and us developers did not choose this naming (self defense plea here for us brilliant developers whom never make such mistakes... PS: HI LARS! - Go Germany!)
Now we are setting up a connection from BW into HANA using system connection and inside this is a parameter called 'db user'.  Although it's called db user it's actually looking for a SCHEMA name.  If BW DEV is querying from HANA DEV this schema name would be DEV_SCHEMA.  However if BW_QA is querying from HANA_QA then the name would need to be QA_SCHEMA but in our BW landscape we are locked in QA and PROD and normally can not and/or do not want to edit objects in non-native systems.  Ideally what we need is our default schemas in HANA to have the same exact name throughout the HANA landscape.
All this said, I can see that it would be great to re-name our entire HANA landscape however that would be a HUGE monumental undertaking as all systems would need to be re-replicated again (at least I think).
Just curious if anybody else has named their schemas differently on each tier?  What are most people doing?  Naming the default schemas the same consistently or are you using schema mapping?
Thanks,
-Patrick

Hi Luke,
I am new to the project and there seems to be no original version.  At some point a bunch of the destination field names were changed on the admin console and errors resulted from it both due to mismatched joins and the use of two word field names.  I have documentation of the names for the set of tables in the function area but am having trouble with how everything matches up in the bottom half..  I'll keep working on it
Z

Similar Messages

  • Specify Default Schema Name in HANA Connection string

    Hi,
    I have connection string like this.
    DRIVER={HDBODBC32};UID=uid;PWD=pwd; SERVERNODE=x.com:30015;
    I want to include default schema name in the connection string.
    Please help me

    Hi S V
    there is no option for that available.
    To change the current schema it's required to run SET SCHEMA <schema_name> after you logged on.
    - Lars

  • Single-Tier in Dev / Multi-Tier in Prod - BPC5.1 - are there any issues?

    Background: We are a new install of SAP BPC 5.1 and initially planned to have both Dev and Prod as a single tier install.  In the Blueprint design review, the recommendation was made and accepted to have production as a Multi-Tier landscape.  Due to tight timelines, the customer will go-live on the Production Multi-tier landscape and Dev in a Single Tier configuration. As soon as possible, we will move Dev to a Multi-Tier install as well to synchronise Dev to Prod.
    Question: Other than being uncommon, is there any know issues with having this current dissimilar landscape?
    Edited by: Penelope Thomson on Dec 17, 2007 12:15 PM

    There's nothing uncommon about having a development environment that isn't an exact macth to production.  Many clients that have large mutli-server configurations don't invest that much money and resources in thier development environment.  The downside is that when you do things such as stress testing, user acceptance testing and other configurations in development, you really have to do them again in production if you want a fully tested environement.
    Also, if you have different software components (e.g. 64bit OS in production and 32bit in development) you are dealing with different service packs and other components that can have different issues.  I've also run into differences in authentication issues between a simple and more complex environment depending on how the components are arranged.
    These should all be issues the technical consultant that is doing the server configurations can discuss with you.  The bottom line is you'll want to make sure you have the production environment setup with enough time to do a through testing before go-live.  As far as moving the application from development to production, going from a single server to mutli-server shouldn't be an issues as long as you're using server mananger to do the backup and restore.

  • Setting default schema with Schema Select extension

    Has anyone tried to do this? The web site says to put the default schema name in square brackets at the end of the connection name. When I try to do that, SQL Developer says that square brackets are illegal characters for a conneciton name.
    In essence I want to have users log in with their own individual accounts, but have their schema context automatically set to a different schema.

    You'll need to contact the extension provider directly for support.
    You could achieve the same result with a trigger - and you'd have more control over when this happened, what applications, etc.
    If you want bracketed connection names, you'll need to run an older version of SQL Developer or manually edit the connections.xml file to add the brackets to the name.
    Edited by: Jeff Smith SQLDev PM on Apr 24, 2013 10:43 AM

  • Selection from Another schema by default without schema name qualifier.

    Hi
    Oracle10g release 2, LinuxOS
    i want my schema (User_1) to always select,insert, update, delete the objects from another schema (User_2) without passing full schema qualifier every time whenever i don't pass any schema name explicitly.
    i.e. if i pass the following guerry
    select * from table_a;
    the table of user User_2.table_a (User_2.table_a) will be queried by default instead of table (User_1.table_a)
    and the same implementation is also required in Functions , procedures, sequences etc.
    Wishes

    Three relatively easy options
    1) Create private synonyms in User_1's schema for each object in User_2's schema, i.e.
    CREATE SYNONYM table_a
       FOR user_2.table_a2) Create public synonyms for each object in User_2's schema. This will make it possible for all users to query user_2's objects without specifying the schema name
    CREATE PUBLIC SYNONYM table_a
       FOR user_2.table_a3) Change the current schema for the session (potentially in a login trigger)
    ALTER SESSION SET current_schema = USER_2There are other options that are a bit more complicated like using enterprise users with shared schemas. But most people are perfectly happy with one of these three.
    Justin

  • How to configure the schema name dynamically based on user input.

    configure the schema name dynamically based on user input.
    For ex:
    We have two schemas:
    Schema1  - base schema having 15 tables.
    Schema2 -  tables which is specific to modules. Having only 10 tables which is also available in Schema1
    Login to application using Schema 1
    Access a particlular module and select the country. Here country selection is identified.
    Based on the country selection, we need to connect the schema respectively.
    If the user selects France --> It should connect Schema1
    If the user selects Germeny --> It should connect schema2.
    Used: Eclipselink

    You may want to have a different persistence unit for each country, then you just need to switch persistence units, and can put the schema in your orm.xml file.
    You may also want to investigate EclipseLink multi-tenant support,
    http://www.eclipse.org/eclipselink/documentation/2.5/jpa/extensions/a_multitenant.htm
    You can the schema in a persistence unit in code using a SessionCustomizer and the tableQualifier.

  • Assigning a default schema to a user.

    In Oracle can I assign a default schema to a user without using the later session command?
    Is there a ALTER USER setting where I can assign a user a default schema?

    Buddy,
    To answer to your question.
    1. First grant select any table or "grant select on all tables of user 'ELLIPSE' to the user "094137".
    2. Later to access schema ELLIPSE's objects, from "094137" user, you ll have to create public synonym to all of the tables in ELLIPSE schema.
    3. This way, the user "094137" can access all tables in SCHEMA ELLIPSE, with out specifying(prefixing) the schema name
    Hope this helps
    Thanks
    I would like the user "094137" to logon and have access to the tables in another schema "ELLIPSE" with out qualifying the table name with "ELLIPSE".
    The user "094137" has no objects of her own and only accesses the object of the schema "ELLIPSE".
    Is there a direct way of assigning a user (with no objects) to have a default schema of another users (without the alter session default schema statement)

  • What is the default user name and password for oracle databse 10g

    Hi: gurus, I just recently installed the oracle 10g personal edition and trying to log on to the enterprise manger, but can't figure it out the user name and password, can some one help me and tell me what is the default user name and password to logon to the oracle instance. BTW during the installation I choose two passowrds one for the schema and one for the global database orcl. I wonder will I be using one of these passwords. Still I don't have any clue for the "User Name".
    thanks

    system/manager and sys/change_on_install are still valid default passwords when database is manually created. If DBCA was used, passwords will be those defined at creation time inside DBCA.
    In case passwords have been forgotten, those can be reset:
    From an OS commnad prompt, set ORACLE_SID, ORACLE_HOME and PATH environment variables, just to make sure you are pointing to the right Oracle Home installation, and issue:
    OS> sqlplus / as sysdba
    SQL> alter user sys identified by yourNewSysPassword;
    SQL> alter user system identified by yourNewSystemPassword;
    And you're done with it.
    HR Madrid

  • How to get the current schema name

    Hi,
    Can anybody please tell me how to get the current schema name, there is some inbuilt function for this,but i am not getting that. Please help me.
    Thanks
    Jogesh

    ok folks, I found the answer at Tom's as usual.
    http://asktom.oracle.com/tkyte/who_called_me/index.html
    I rewrote it into a function for kicks. just pass the results of DBMS_UTILITY.FORMAT_CALL_STACK to this function and you will get back the owner of the code making the call as well some extra goodies like the name of the code and the type of code depending on the parameter. This ignores the AUTHID CURRENT_USER issues which muddles the schemaid. Quick question, does the average user always have access to DBMS_UTILITY.FORMAT_CALL_STACK or does this get locked down on some systems?
    cheers,
    paul
    create or replace
    FUNCTION SELF_EXAM (
       p_call_stack VARCHAR2,
       p_type VARCHAR2 DEFAULT 'SCHEMA'
    ) RETURN VARCHAR2
    AS
       str_stack   VARCHAR2(4000);
       int_n       PLS_INTEGER;
       str_line    VARCHAR2(255);
       found_stack BOOLEAN DEFAULT FALSE;
       int_cnt     PLS_INTEGER := 0;
       str_caller  VARCHAR2(30);
       str_name    VARCHAR2(30);
       str_owner   VARCHAR2(30);
       str_type    VARCHAR2(30);
    BEGIN
       str_stack := p_call_stack;
       -- Loop through each line of the call stack
       LOOP
         int_n := INSTR( str_stack, chr(10) );
         EXIT WHEN int_cnt = 3 OR int_n IS NULL OR int_n = 0;
         -- get the line
         str_line := SUBSTR( str_stack, 1, int_n - 1 );
         -- remove the line from the stack str
         str_stack := substr( str_stack, int_n + 1 );
         IF NOT found_stack
         THEN
            IF str_line like '%handle%number%name%'
            THEN
               found_stack := TRUE;
            END IF;
         ELSE
            int_cnt := int_cnt + 1;
             -- cnt = 1 is ME
             -- cnt = 2 is MY Caller
             -- cnt = 3 is Their Caller
             IF int_cnt = 1
             THEN
                str_line := SUBSTR( str_line, 22 );
                dbms_output.put_line('->' || str_line);
                IF str_line LIKE 'pr%'
                THEN
                   int_n := LENGTH('procedure ');
                ELSIF str_line LIKE 'fun%'
                THEN
                   int_n := LENGTH('function ');
                ELSIF str_line LIKE 'package body%'
                THEN
                   int_n := LENGTH('package body ');
                ELSIF str_line LIKE 'pack%'
                THEN
                   int_n := LENGTH('package ');
                ELSIF str_line LIKE 'anonymous%'
                THEN
                   int_n := LENGTH('anonymous block ');
                ELSE
                   int_n := null;
                END IF;
                IF int_n IS NOT NULL
                THEN
                   str_type := LTRIM(RTRIM(UPPER(SUBSTR( str_line, 1, int_n - 1 ))));
                 ELSE
                   str_type := 'TRIGGER';
                 END IF;
                 str_line  := SUBSTR( str_line, NVL(int_n,1) );
                 int_n     := INSTR( str_line, '.' );
                 str_owner := LTRIM(RTRIM(SUBSTR( str_line, 1, int_n - 1 )));
                 str_name  := LTRIM(RTRIM(SUBSTR( str_line, int_n + 1 )));
              END IF;
           END IF;
       END LOOP;
       IF UPPER(p_type) = 'NAME'
       THEN
          RETURN str_name;
       ELSIF UPPER(p_type) = 'SCHEMA.NAME'
       OR    UPPER(p_type) = 'OWNER.NAME'
       THEN
          RETURN str_owner || '.' || str_name;
       ELSIF UPPER(p_type) = 'TYPE'
       THEN
          RETURN str_type;
       ELSE
          RETURN str_owner;
       END IF;
    END SELF_EXAM;

  • Schema name not present on filename for "Save Package Spec and Body"

    In versions previous to 3.0 EA, the filename defaulted to schema.object.sql when using the "Save Package Spec and Body" on the right click of the package/body. This appears to have disappeared. Also, it now defaults to the .PLS ext/type, which I prefer to save them as .SQL (which i can override, but it would be nice in the file type dropdown). Also, I had posted a suggestion about the actual file not including the schema name prefixing the object name when using the "Save Package Spec and Body". i.e. it does create or replace package reader_package instead of what it should be doing which is create or replace package schema.reader_package

    Would be nice indeed having the real name as default, and all supported PL/SQL types (as in the preferences) in the extensions dropdown.
    As for the schema name inside, I reckon that would do damage for more users than it would do good for others. But a preference would be best of course.
    K.

  • How to set default 'schema' in Pointbase?

    I am using Netbeans EA2 with bundled appserv. I have tried creating a CMP entity bean from the Pointbase sample database (PBPUBLIC), which works. But when i created my own database (MYDATABASE) in Pointbase and a CMP bean for my test-table, i get a SQLException: Invalid table name "Mytable" specified at position 147.
    This exception is thrown when i run "findByPrimaryKey" on my tablebean's home.
    I think i have narrowed the problem down to this:
    When I execute sql-commands on my db, I have to write
    Select * from "MYDATABASE"."Mytable"
    If i try to execute
    Select * from "Mytable"
    i get an error. (Invalid table name)
    Whereas when i execute commands on the Pointbase sample db (PBPUBLIC), both these sql's work:
    select * from "PBPUBLIC"."CUSTOMER_TBL"
    and
    select * from "CUSTOMER_TBL"
    My questions are
    1. How do i specify that "MYDATABASE" should the default schema in my database?
    is it possible at all? I have tried searching the pointbase docs, and looked in Pointbase Commander, but have found nothing.
    2. If I was going to fully qualify, that is, use "MYDATABASE"."Mytable" everytime i query the database, how and where do i specify that my entity bean should map betweed my dbschema and "MYDATABASE"."Mytable" ? Writing
    <table-name>MYDATABASE.Mytable</table-name> in sun-cmp-mappings.xml did not work (but that was no suprise)
    Is it not possible to fully qualify the tablename when using entity ejb's?
    the error i get is similar to the one in this thread, except that my dbschema name is correct.
    http://forum.java.sun.com/thread.jspa?threadID=586762&tstart=0
    I have tried creating a new dbschema in Netbeans, and editing sun-cmp-mappings.xml to point to the new dbschema. But i still get the same error.
    And btw, i know that my database is available, cause when i try to get the DataSource for my db directly, and execute a query, it works. But i have to fully qualify the tablename.
    Any help would be appreciated
    Thanks.

    I solved using the SET PATH statement.
    SET PATH your_default_schema, PointBase;
    Follow an extract from the PointBase Developer�s Guide:
    If you never execute a SET PATH statement, then the CURRENT_PATH consists of the
    schema POINTBASE, followed by your existing schema. When a SET PATH statement is
    issued, it completely replaces the existing CURRENT_PATH, unless CURRENT_PATH is part
    of the schemas being set in the path.
    The order of the schemas in the path is generally crucial. When the database system is looking
    for SQL objects, it looks for them in each schema (unless explicitly referenced otherwise),
    starting with the first schema in the path, then the next, etc...., until an SQL object is found that
    meets the criteria. One way to override the CURRENT_PATH is to explicitly reference the
    SQL object. For example, to reference a table, you can specify schema_name.table_name. In
    the above examples, the SQL object of table_name would be searched in the schema of name
    schema_name.
    I hope this helps,
    regards,
    armando croce

  • WCEM Best Practice deployment in a multi CRM Landscape

    Hi SCN
    Im looking for advice in relation to best practice deployment of WCEM. Specifically in a multi CRM landscape scenario.
    Do best practices exist?
    JR

    Look into using NWDI as your source code control (DTR) and transport/migration from dev through to production.  This also will handle the deployment to your dev system (check-in/activate).
    For unit testing and debugging you should be running a local version (NWDW).  This way once the code is ready to be shared with the team, you check it in (makes it visible to other team members) and activate it (deploys it to development server).
    We are currently using a separate server for WD applications rather than running them on the portal server.  However, this does not allow for the WD app to run in the new WD iView.  So it depends on what the WD app needs to do an have access to.  Of course there is always the Federated Portal Network as an option, but that is a whole other topic.
    For JCo connections, WD uses a connection name and this connection can be set up to point to different locations depending on which server it is on.  So on the development server the JCo connection can point to the dev back-end and in prod point to the prod back-end.  The JCo connections are not migrated, but setup in each system.
    I hope this helps.  There is a lot of documentation available for NWDI to get you started.  See:  http://help.sap.com/saphelp_erp2005/helpdata/en/01/9c4940d1ba6913e10000000a1550b0/frameset.htm
    -Cindy

  • Using Basic or Multi-tier configuration for WLS Clusters...

    Ok,
              The scenario is: I'm using WLS6.1 (hopefully, version doesn't matter here)
              with three instances clustered. Each instance provides all Services:
              Servlets / JSPs/ EJBs / Database communication... I'm using the Basic
              configuration described on the BEA documentation....
              Now, I want to move forward to a Multi-tier configuration, where the first
              layer will serve Servlets and JSPs and the second layer will serve EJBs.
              The problem: On the first scenario, I was looking EJBs with the Default
              InitialContext() constructor without the environment, since everybody was on
              the same JVM...
              What do I have to do, so my Servlets start looking for EJBs on the second
              cluster now? Do I have to re-write every single lookup? Can I use a
              jndi.properties file on the first layer - on the presentation tier?
              Thanks in Advance,
              Marcelo.
              

              Thanks Patrick!
              But my actual problem starts here. The Servlets aren't mine. We have to support
              applications which run atop our product(which is a bunch of beans+RMI Objects
              running on the top of WLS) in a backward compatible way with a standalone.
              Will try and make a post if I can find a 'configurable' way out.
              Harish
              Robert Patrick <[email protected]> wrote:
              >Put the other server's PROVIDER_URL in a system property, property file,
              >whatever and
              >have the servlets explicitly use it when creating the InitialContext
              >to talk with the
              >other server...
              >
              >Harish Vajha wrote:
              >
              >> Hi Cameron,
              >>
              >> A -Djava.naming.provider.url nor jndi.properties would work. The problem
              >is like
              >> this:
              >> Say I have two WL servers hosting just EJBs: E1, E2. And I have a single
              >WL Server
              >> hosting just servlets: S1. Now I give the -Djava.naming.provider.url=E1(using
              >> http or t3) (or I provide the same thing using my own jndi.properties).
              >>
              >> The problem with this setup is that while starting up, the Server will
              >try binding
              >> every object(including the System bindings like wl.transaction.TransactionManager,
              >> wl.common.T3Services) to the other NS (in this case E1's naming service)
              >which
              >> is bound to fail, as they're already bound in that Server.
              >>
              >> The solution has to be a way to specify the java.naming.provider.url
              >only for
              >> the servlets (or the web app).
              >>
              >> Any ideas on how to provide a Webapp specific lookup address?
              >>
              >> Marcelo, if you've found a way out to separate, pl. make a post.. Thanks!
              >>
              >> Harish
              >>
              >> "Cameron Purdy" <[email protected]> wrote:
              >> >Hi Marcelo,
              >> >
              >> >With Weblogic, your performance will typically decrease if you go
              >the
              >> >route
              >> >that you are describing.
              >> >
              >> >Yes, you can do jndi.properties, however I believe you will find it
              >inside
              >> >one of the WL jars.
              >> >
              >> >Note that you can use java -D instead to define some of the JNDI properties
              >> >to point to the other cluster, but I can't remember them off-hand.
              >> >
              >> >Peace,
              >> >
              >> >--
              >> >Cameron Purdy
              >> >Tangosol Inc.
              >> ><< Tangosol Server: How Weblogic applications are customized >>
              >> ><< Download now from http://www.tangosol.com/download.jsp >>
              >> >
              >> >
              >> >"Marcelo Caldas" <[email protected]> wrote in message
              >> >news:[email protected]...
              >> >> Ok,
              >> >> The scenario is: I'm using WLS6.1 (hopefully, version doesn't matter
              >> >here)
              >> >> with three instances clustered. Each instance provides all Services:
              >> >> Servlets / JSPs/ EJBs / Database communication... I'm using the
              >Basic
              >> >> configuration described on the BEA documentation....
              >> >>
              >> >> Now, I want to move forward to a Multi-tier configuration, where
              >the
              >> >first
              >> >> layer will serve Servlets and JSPs and the second layer will serve
              >> >EJBs.
              >> >>
              >> >> The problem: On the first scenario, I was looking EJBs with the
              >Default
              >> >> InitialContext() constructor without the environment, since everybody
              >> >was
              >> >on
              >> >> the same JVM...
              >> >> What do I have to do, so my Servlets start looking for EJBs on the
              >> >second
              >> >> cluster now? Do I have to re-write every single lookup? Can I use
              >a
              >> >> jndi.properties file on the first layer - on the presentation tier?
              >> >>
              >> >> Thanks in Advance,
              >> >> Marcelo.
              >> >>
              >> >>
              >> >
              >> >
              >
              

  • Schema Names

    Dear OTN members,
    Is there a way to make the schema name appear on the GUI's connecting to that schema. I understand Oracle creates a schema by default for a user created in the Database. Is it possible to rename this schema for the GUI's look and feel. Please throw some light on this.
    Thanks,
    Vivek

    you cannot have a schema name different from the username.
    Apart from the semantic, an oracle schema = an oracle username.

  • Get Database Schema Name

    Hi,
    I am trying to retrieve the schema name from my application so I can perform some ALTER DATABASE `foo`... statements in MySql which ensure database intergrity for my application. Ideally i would want to accomplish this without having to run a regular expression on my connect url:
    url="jdbc:mysql://localhost:3306/bad2?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true"
    which already has the default schema/database I am using. I was wondering if there is some JDBC standard method that all drivers comply to as I would rather avoid having to write some conditional, vendor specific code. Ideally this will be present in DatabaseMetadata.Thanks,
    Nedko
    http://www.nedkoko.com
    Edited by: nedKoKo.com on Oct 11, 2007 10:55 AM
    Edited by: nedKoKo.com on Oct 11, 2007 11:25 AM

    Owen unfortunately Connection.getCatalog() works well with all databases but Oracle which gets me back to square 1 of the problem. My application is designed to use different database vendors among which are MySql, MsSQL and Oracle. A standard connection URL should work fine and connect to the specified schema of your choice. The problem however is that the Connect URL string in Oracle is different and does not specify the default schema:
    Mysql: url="jdbc:mysql://localhost:3306/database_name?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true"
    MsSQL: url="jdbc:jtds:sqlserver://sqlserver:1433/database_name;SelectMethod=cursor"
    Oracle: url="jdbc:oracle:thin:@bart:1521:orcl"
    The oracle URL is constructed according the specs (http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq.htm#05_03) and does not specify schema by default but just SID name. As I am using Hibernate persistence in my J2EE app I am forced to specify "schemaName" when I initialize my environment which works fine but is Oracle specific. On the other hand Connection.getCatalog() works great with other vendors but returns NULL for Oracle. Ideally i want to be able to resolve everything in a unified way and not have to write vendor specific code. Any suggestions are appreciated.
    Nedko

Maybe you are looking for

  • Multiple iDocs in a single file

    Hello, I'm working on some integration to send a purchase order change file into SAP from BizTalk.  Everything works when we send every change as its own iDoc, or when we send all changes for a single PO in a single file, but when we try and include

  • Error message while posting goods issue.

    Hi, Please help me with the following problem.. I have created Sales Order, Delivery & also created the Transfer Order number. After creating Transfer ordering, while submitting post goods issue, when I click on PGI, I get "Posting only available for

  • Business Partner ID and Vendor creation

    Hi All,     My client does not want to create Vendor IDs for potential vendor during RFx until awarded. My situation is if the supplier registers to buyer Business partner id is created first.  Buyer still cannot proceed with PO processing(classic sc

  • Upgradation from PI 7.0 TO PI 7.1

    Hi all, Now we are running on PI 7.0 and planning to upgrade to PI 7.1 What are the steps we need to perform after upgrade?? Regards

  • Installing iTunes with Quictime

    I have downloaded the installer iTunes with Quicktime 7.13. After downloading, I try to install and it states that it isn't a win32 application. I didn't have this problem a week ago on another computer in my building. Any ideas? Thanks.