Database Data Security: both from within (using MIMEbase64 encoding) and from without (using encryption).

In my MDB file databases (Jet 4.x format) I turn on both compression and encryption.  This gives me data security from without, meaning, I can't open a MDB file in a Word Processing software (or otherwise) and read the data in a humanly recognized
format.   But I am also using MIMEbase64 encoding of my stored data so that the data is humanly unreadable from within - meaning that anyone performing an SQL query will not be able to humanly read the data in my database.  I do the decoding
(from MIMEbase64) within my end-user software interfaces to the databases. 
I found out just recently (last few months) that I can do this from Win32 Perl, so I encorporated this feature into my Perl database applications.   Only thing is that MIMEbase64 increases the size of the data stored.
Is there a better encoding strategy available today which might actually compress the data a little?    

 INSTRUCTIONS FOR SECURE/CUSTOM (non-formula based) TEXTFILE ENCODING (should be undecipherable w/o mappings file):
by Eric C. Hansen. You may freely use these encoding instructions, and the code I have provided, but please
acknowledge me as the author where credit is due - such as in a publication. And do not try to sell it.
However, any code I have provided you may freely use in any programs you write to be sold for your own profit,
except you may not attempt to sell this encoding scheme (or my code provided), as a generic encoding tool, for
general use, to be marketed as a turn-key custom encoding solution. 
(1) Create a unique code list 
      Using the characters:  A-Z a-z 0-9 only. That's 62 characters only.  
       62 (1 char codes) + 3844 (2 char codes) + 238,328 (3 char codes) = 242,234 total codes
                 62x1         +      62x62         +       62x62x62    
       REMINDS ME of my college Genetics course i.e. dominant/recessive trait inheritance tables  
       EXAMPLE CODES:  a, k, 3c, A4, xy1, H8j
(2) Create a unique word(+punc) list from your textfile which is to be encoded. You know how to do this.
       Example of 9 words(+punc) found between whitespace within a textfile input line:
            "Hello", this is Mr. Bell-va-deer. My number is 999-342-8998.   
                1       2    3   4       5              6      7       8       9
 PERL code for STEPS 3-7 is provided below. Code for STEP 1 above was previously provided. 
         You should have little trouble writing the textfile encode/decode logic yourself.  
(3) Read your list of unique codes into an array.
(4) Read your list of unique words(+punc) into another array.
     LOOP   #-- 0 to number of elements in words array
            (5)     select a random code and a random word(+punc) from the 2 arrays.
            (6)     now remove that code and that word(+punc) from each array using "splice".
            (7)     then save them as key/val pairs to persistent Perl SDBM database files ("mappings").  
     END LOOP
 (8) Once you have your persistent, random code/word mappings, you can convert your textfile
      to an encoded textfile. Read in one line at a time from your textfile (chomp), parse the words(+punc.)
     between whitespace within that line, then for each word(+punc) parsed, perform
     the word-to-code mapping conversions by doing a lookup within the Perl SDBM database
     file of key/val pairs, where KEY=word and VAL=code. You will then need to 
     concatenate these codes (space delimited) to your outputline, in the same order as found in your
     inputline, finally writing the outputline (newline "\n" terminated) to your new encoded textfile.    
(9) Keep your persistent Perl SDBM database file ("mappings") in SAFE KEEPING, with a naming
     convention of your choice that perhaps hides any relationship to the name of
     your encoded text document - which it specifically pertains to. But keep a record of that joint
    relationship somewhere.  Keep a copy of both the original textfile and the encoded textfile,
    or perhaps you'd like to keep just the encoded textfile?, and not the original?  You can always decode it. 
(10) Send your encoded text document via email as an attachment, to the recipient of your choice.
(11) Upload your persistent Perl SDBM database "mappings" file to your secure login FTP download site. 
     NOTE:  If your encoded text document is very large, you may want to reverse 10 & 11, putting the encoded file
         on the FTP site, and sending the Perl SDBM database file ("mappings") as the email attachment.
(12) Call your recipient to see if they have received the encoded textfile, email attachment.
     Let them know that the "mappings" file is uploaded for them to download from the FTP site.
    You can have a LINGO you both use/know on the phone, to secretly convey this message, if you like,
      to avoid possible interception of this sensitive information.
     Recipient will then take the encoded textfile email attachment, the FTP downloaded "mappings" file,
    and place them both in a directory on their PC where the Perl decoding program is located which you
     had previously sent them to handle all the decoding anytime you send them an encoded textfile + "mappings".
     Recipient will run the Perl decoding utility program to create the original textfile.
use Win32;         #-- as you can see, I use a Windows O/S Perl distribution. 
use IO::Handle;
use SDBM_File;     #-- my understanding is this module comes standard with every Perl distribution
use Fcntl;
    $PWD=Win32::GetCwd();  #-- get current working directory on Windows O/S platform.            
    srand;        #-- random seeding initiated, do this just once at top.
    @codesARR=();    @wordsARR=();          #-- initialize the arrays
    print "working.  please wait...\n\n";
    unlink( "$PWD\\Project_0836_Mappings_CtoW.pag" )
                if (-e "$PWD\\Project_0836_Mappings_CtoW.pag" );
   unlink( "$PWD\\Project_0836_Mappings_CtoW.dir" )
              if (-e "$PWD\\Project_0836_Mappings_CtoW.dir" );
    unlink( "$PWD\\Project_0836_Mappings_WtoC.pag" )
              if (-e "$PWD\\Project_0836_Mappings_WtoC.pag" );
   unlink( "$PWD\\Project_0836_Mappings_WtoC.dir" )
             if (-e "$PWD\\Project_0836_Mappings_WtoC.dir" );
     unlink( "$PWD\\Project_0836_Mappings.txt" )
             if (-e "$PWD\\Project_0836_Mappings.txt" );
   $cnt1=0;    $ret="Y";
    open(CODES,"$PWD\\codes.txt") || do {$ret="N";};
    if ($ret eq "N") {  
           print "Codes input file not opened \n";  
           sleep 5;   die;  
    while (<CODES>) {
           chomp $_;
          $codesARR[$cnt1]=$_;
          $cnt1++;
    print $cnt1 . " codes loaded\n\n";
   close(CODES);
   $cnt2=0;    $ret="Y";
   open(WORDS,"$PWD\\words.txt") || do {$ret="N";};
    if ($ret eq "N") {  
            print "Words input file not opened \n";  
           sleep 5;   die;  
   while (<WORDS>) {
           chomp $_;
          $wordsARR[$cnt2]=$_;
            $cnt2++;
    print $cnt2 . " words loaded\n\n";
    close(WORDS);
    sleep 3;       #-- a little time to check on record counts loaded to both arrays
  tie( %Project_0836_Mappings_WtoC, "SDBM_File", '.\Project_0836_Mappings_WtoC', O_RDWR|O_CREAT, 0666 );
   if (tied %Project_0836_Mappings_WtoC) {
           print "WtoC Hash/SDBM File are now tied\n\n";    
   } else {
          print "Could not tie WtoC Hash/SDBM File\n\n";  sleep 5;  die;
   tie( %Project_0836_Mappings_CtoW, "SDBM_File", '.\Project_0836_Mappings_CtoW', O_RDWR|O_CREAT, 0666 );
    if (tied %Project_0836_Mappings_CtoW) {
             print "CtoW Hash/SDBM File are now tied\n\n";    
    } else {
           untie(%Project_0836_Mappings_WtoC);  #-- close the successful tie made directly above 
          print "Could not tie CtoW Hash/SDBM File\n\n";  sleep 5;  die;
  open (OUT,"> $PWD\\Project_0836_Mappings.txt");
   OUT->autoflush(1);
   $cnt2=$#wordsARR;   #-- we do this because we will be removing elements from wordsARR
   for ($i=0; $i<=$cnt2; $i++) {
         $index   = rand @codesARR;    # get a random index from the codes array
        $code    = $codesARR[$index]; # get the value of that array element
        splice(@codesARR,$index,1);   # removes only this element from the codes array.
        $index   = rand @wordsARR;    # get a random index from the words array
        $word    = $wordsARR[$index]; # get the value of that array element
        splice(@wordsARR,$index,1);   # removes only this element from the words array.
        $Project_0836_Mappings_WtoC{$word}=$code;   # key/value pair where: word is key, code is value
        $Project_0836_Mappings_CtoW{$code}=$word;   # key/value pair where: code is key, word is value
    print "Your Mappings have been created and saved to (.dir and .pag extension files)\n\n";
    print OUT "Here are your Mappings you just created:\n\n";
    foreach $key (keys %Project_0836_Mappings_WtoC) {
          print OUT "word=" . $key . "     code=" . $Project_0836_Mappings_WtoC{$key} . "\n";
  print OUT "##################################################\n";
   foreach $key (keys %Project_0836_Mappings_CtoW) {
           print OUT "code=" . $key . "     word=" . $Project_0836_Mappings_CtoW{$key} . "\n";
    untie(%Project_0836_Mappings_WtoC);  #-- now you have saved a persistent word/code mappings file
    untie(%Project_0836_Mappings_CtoW);  #-- now you have saved a persistent code/word mappings file
    close(OUT);   
    print "Done.  Goodbye!\n";
    sleep 5;
    exit;

Similar Messages

  • HT4623 What if "check for updates" tells you "iOS 6.1.3" BR "Your software is up to date" on both iTunes 11.0.5.5 AND in iPod Touch (4g) settings?

    What if "check for updates" tells you "iOS 6.1.3"<BR>"Your software is up to date" on both iTunes 11.0.5.5 AND in iPod Touch (4g) settings?

    iOS 7 requires a 5th generation iPod touch.
    iTunes 11.1 can be downloaded from http://apple.com/itunes/download/.

  • Weblogic will encrypt the Data which are accesssed by using its Data Source

    The Connection Pool and Data Source created from Weblogic , will encrypt the data which are accessed by using this Data source and Connection Pool from the DB?
    If not how we can secure the data which are accessed from this Data Source?
    Bye
    Srinivasan

    The connection between WL and the database can be encrypted; your DBA needs to configure the encryption on the database and then you set properties in the connection pool.
    If you want to encrypt the data within the database, some databases can also do that.

  • Oracle BI (Siebel Analytics) / Data Warehouse Data Security

    Hello,
    We are implementing Oracle Siebel Analytics and Custom datawarehousing using Oracle 9i DB. I am interested to know if we can implement consistent data security model for different data marts. Means with one single data warehouse, I want to implement data security model or policies in one place and they are applied consistently across all of the datamarts.
    1. Can we or oracle support this kind of secinerio.
    2. If yes, what would be perfect model an example will be helpful, and if not what best approach is available to resolve this security model.
    Any suggestion or help would be great.
    Regards
    Girish

    Hi, Do you also get some other packages names that the error msg reports like ...
    RPE-01012 Cannot deploy PL/SQL maps to the target schema because it is not owned by the Control Center and "SOME WRT.... package names" I think once did I face this and made sure that the repository user has some packages granted through OWBREPOS_OWNER/OWB_REPOS_OWNER to the user you are using to run the mapping.
    Regards,
    Mohammad Farhan Alam

  • Get the starting date and end date of all weeks of a given month and year

    hey Guys so far I have this.. but I am having difficulty limiting it by month. I am using Oracle 11 release 1
    Select year, week, next_day( to_date( '04-jan-' || year, 'dd-mon-yyyy' ) + (week-2)*7, 'sun' ) as weekStartDate,
    next_day( to_date( '04-jan-' || year, 'dd-mon-yyyy' ) + (week-2)*7, 'sun' ) +6 as weekEndDate
    from (Select '2012' year, rownum week from all_objects where rownum<=5)
    Thanks in advance
    Edited by: Aj05 on Jan 12, 2012 7:42 AM

    First you need to define week starting day. If, for example it is Monday:
    TRUNC(TRUNC(&dt,'YYYY') -1,'IW')is first Monday of the year. Then:
    SELECT TRUNC(TRUNC(&dt,'YYYY') -1,'IW') + (LEVEL - 1) * 7 week_start_date
      FROM  DUAL
      CONNECT BY LEVEL <= 53
    /will give start dates of all weeks within &dt year. And:
    WITH t AS (
               SELECT TRUNC(TRUNC(&dt,'YYYY') -1,'IW') + (LEVEL - 1) * 7 week_start_date
                FROM  DUAL
                CONNECT BY LEVEL <= 53
    SELECT  week_start_date,
            week_start_date + 6 week_end_date
      FROM  t
      WHERE week_start_date > TRUNC(&dt,'MM')
        AND week_start_date < ADD_MONTHS(TRUNC(&dt,'MM'),1)
    /will give you week start/end dates within &dt year and month. For example:
    SQL> DEFINE dt="DATE '2012-03-17'"
    SQL> WITH t AS (
      2             SELECT TRUNC(TRUNC(&dt,'YYYY') -1,'IW') + (LEVEL - 1) * 7 week_start_date
      3              FROM  DUAL
      4              CONNECT BY LEVEL <= 53
      5            )
      6  SELECT  week_start_date,
      7          week_start_date + 6 week_end_date
      8    FROM  t
      9    WHERE week_start_date > TRUNC(&dt,'MM')
    10      AND week_start_date < ADD_MONTHS(TRUNC(&dt,'MM'),1)
    11  /
    old   2:            SELECT TRUNC(TRUNC(&dt,'YYYY') -1,'IW') + (LEVEL - 1) * 7 week_start_date
    new   2:            SELECT TRUNC(TRUNC(DATE '2012-03-17','YYYY') -1,'IW') + (LEVEL - 1) * 7 week_start_date
    old   9:   WHERE week_start_date > TRUNC(&dt,'MM')
    new   9:   WHERE week_start_date > TRUNC(DATE '2012-03-17','MM')
    old  10:     AND week_start_date < ADD_MONTHS(TRUNC(&dt,'MM'),1)
    new  10:     AND week_start_date < ADD_MONTHS(TRUNC(DATE '2012-03-17','MM'),1)
    WEEK_STAR WEEK_END_
    05-MAR-12 11-MAR-12
    12-MAR-12 18-MAR-12
    19-MAR-12 25-MAR-12
    26-MAR-12 01-APR-12
    SQL> SY.

  • How to store and retrieve blob data type in/from oracle database using JSP

    how to store and retrieve blob data type in/from oracle database using JSP and not using servlet
    thanks

    JSP? Why?
    start here: [http://java.sun.com/developer/onlineTraining/JSPIntro/contents.html]

  • Security Permissions from Management Console Not Being Replicated on SQL Server Database

    Hi Everyone,
    We have been encountering issues with access to Reporting Services for most console users since we upgraded to SCCM 2012 R2. We have observed that since the R2 upgrade, security permissions
    that are set in the console are not being replicated on the SQL database. Users/Groups that had access prior to the R2 upgrade are now only able to access Reports via the web interface. All new users/groups are not able to get access at all.
    We are not sure what the problem could be and would appreciate any guidance.
    We have tried the following without success:
    Manually adding new users/groups to the database
    Reinstalling the the Reporting Service point and Reporting Service, Removing all of the security groups from the console and from the database, and Adding the security groups back
    to the console.
    Our current environment:
    SCCM 2012 R2
    1 Site
    Primary Site:
    OS: Server 2008 R2
    Roles: Site Server / Software Update Point / Management
    Point
    SQL Server
    OS: Server 2008 R2
    SQL Version: Microsoft SQL Server 2008 R2
    Roles: Site Database Server / Reporting Services Point

    Thanks for your feedback.
    Permissions
    We have two main types of users: Full Administrators and local departmental IT administrators. (Local IT Admins only have full control over their own departmental collections. They have Read/Add to All Systems.)
    The only account that's currently able to run Reports from both the console and web is the admin account used to perform the R2 upgrade. 
    Full Administrator
    Role: Full Administrator
    Scope: All instances of the objects that are related to the assigned security roles.
    Local Departmental Administrator
    Role: Full Administrator & Read/Add
    Scope: Main Departmental Collection (Full Admin) & All Systems, All Users, and All User Groups (Read/Add)
    Report Service Execution
    On the database, we have tried assigning the Report Service Execution Account to the built-in Network Service Account, Local Service Account, and to a separate AD role account.
    Error Messages
    Console: We are able to select reports from the Console however nothing appears when we click on Run.
    Web: Generating Reports from the Web works for only the Full Administrators. Nothing appears for a Local Departmental Admin.
    This is a partial output from srsrp.log:
    Set configuration    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Check state    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Check server health.    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Successfully created srsserver    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Reporting Services URL from Registry [http://132.205.120.154/ReportServer/ReportService2005.asmx]    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Reporting Services is running    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Retrieved datasource definition from the server.    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    [SCM-SQL.concordia.ca] [CM_SCM] [ConfigMgr_SCM] [SCM-SQL.CONCORDIA.CA]    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    [MSSQLSERVER] [1] [] [CONCORDIA\SVC-SCM_REPORT]    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    [1] [0]    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Confirmed version [10.50.2811.0] for the Sql Srs Instance.    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Retrieved datasource definition from the server.    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Updating data source {5C6358F2-4BB6-4a1b-A16E-8D96795D8602} at ConfigMgr_SCM    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Loading localization resources from directory [E:\SMS_SRSRP\SrsResources.dll]    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Looking for 'English (United States)' resources    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Looking for 'English' resources    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Found resources for 'English'    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:05 PM    2588 (0x0A1C)
    Confirmed the configuration of SRS role [ConfigMgr Report Users].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Confirmed the configuration of SRS role [ConfigMgr Report Administrators].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Confirmed the security policy for folder [/].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Confirmed the security policy for folder [/ConfigMgr_SCM].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Confirmed the security policy for folder [/ConfigMgr_SCM/Asset Intelligence].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)
    Error retrieving users - [The EXECUTE permission was denied on the object 'spGetReportUsers', database 'CM_SCM', schema 'SCCM_Rpt'.].    SMS_SRS_REPORTING_POINT    3/10/2015 2:28:06 PM    2588 (0x0A1C)

  • Insert data into table from JSP page using Entity Beans(EJB 3.0)

    I want to insert data into a database table from JSP page using Entity Beans(EJB 3.0).
    1. I have a table 'FRIENDS', (in Oracle 10g database).
    2. It has two columns, 'NAME' and 'CITY'. Both have datatype strings(varchar2).
    3. Now from a JSP page, having two textfields, 'NAME' and 'CITY', I want to insert data into table 'FRIENDS'.
    4. In between JSP and database is a Entity Bean(EJB 3.0) and a stateless session bean.
    5. I am using JDev as editor.
    Please provide me code ASAP or link with similar example.
    Thank you.
    Anurag

    Hi,
    I am also trying that scenario. So u can
    Post the jsp form data to a Servlet which will act as a Controller.
    In the servlet invoke the business method.
    Similar kind of app is in www.roseindia.net
    Hope this would help u.
    Meanwhile if u get any optimal solution, pls post it.
    Thanks,
    Happy Java Coding.

  • Protect Oracle Database Data from Network Administrators

    first: is there any kind of solution to protect the access to the database from Domain Network admins?
    we know ( ora_dba ) users can login to the database with a blank password,
    second: is there any way to encrypt all the database data on all tables using any kind of products ?
    thanks in advance

    Protect Oracle Database Data from Network AdministratorsNetwork Data Encryption
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/r2/prod/security/network_encrypt/ntwrkencrypt.htm
    second: is there any way to encrypt all the database data on all tables using any kind of products ?Transparent Data Encryption (TDE)

  • How to get the data from mysql database which is being accessed by a PHP application and process the data locally in adobe air application and finally commit the changes back in to mysql database through the PHP application.

    How to get the data from mysql database which is being accessed by a PHP application and process the data locally in adobe air application and finally commit the changes back in to mysql database through the PHP application.

    If the data is on a remote server (for example, PHP running on a web server, talking to a MySQL server) then you do this in an AIR application the same way you would do it with any Flex application (or ajax application, if you're building your AIR app in HTML/JS).
    That's a broad answer, but in fact there are lots of ways to communicate between Flex and PHP. The most common and best in most cases is to use AMFPHP (http://amfphp.org/) or the new ZEND AMF support in the Zend Framework.
    This page is a good starting point for learning about Flex and PHP communication:
    http://www.adobe.com/devnet/flex/flex_php.html
    Also, in Flash Builder 4 they've added a lot of remote-data-connection functionality, including a lot that's designed for PHP. Take a look at the Flash Builder 4 public beta for more on that: http://labs.adobe.com/technologies/flashbuilder4/

  • Using Database link to go from one database to another

    Hi all,
    I am trying to create a SQL-query which connects to two
    different databases.
    I have created a Database link, which points from on database to
    the other, and have supplied the database name, username and
    password.
    when I try to run following query I get error ORA:02085, MY_LINK
    is connecting to SIEBN1S.(domain).com
    SELECT COUNT(*) FROM MY_TABLE@MYLINK;
    additional info:
    2 databases are exact copies on different servers (SIEBN1S and
    N1SSIEB)
    the MY_TABLE exists in both databases and I have rights on it in
    both, I can separately connect to both databases and look into
    MY_TABLE
    I have created the database link using following statement (in
    the N1SSIEB db):
    create database link MYLINK connect to <usr> identified by <pwd>
    using 'SIEBN1S'
    any help is welcome

    You have set GLOBAL_NAMES to TRUE in your init.ora file. This
    means your database link must have the same name as the database
    you want to connect to ie SIEBN1S.(domain).com.
    alternatively you can change GLOBAL_NAMES. to test this try
    'ALTER SESSION SET GLOBAL_NAMES=FALSE'.
    hth, APC

  • No more data to read from socket only in 2nd and 3rd database

    Hi,
    I'm developing an application for a client with three independent login modes, each one with an independent database.
    I'm using the following products:
    Oracle 9i database (9.2.0.6.0)
    Oracle Content Management SDK 10g (9.0.4.0.0)
    Oracle Workflow (2.6.3.0.0)
    Oracle Application Server 10g (9.0.4.2.0)
    In development, I've these products installed in x86 machines with Windows 2000. I've no problems and no errors.
    In the client, I've the same products and versions but installed in a Solaris Machine and I've the following error ONLY when I use the second and the third login modes (not always, maybe only in 50% of the times I submit data in the application). In the first login mode I have no problems. The code for the different modes is essentially the same so I don't understand what is the problem. I don't have access to the client server so I can't make a debug.
    The error is:
    Caused by: java.sql.SQLException: No more data to read from socket
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:189)
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:231)
         at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:985)
         at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:746)
         at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:705)
         at oracle.jdbc.ttc7.Oclose.receive(Oclose.java:105)
         at oracle.jdbc.ttc7.TTC7Protocol.close(TTC7Protocol.java:565)
         at oracle.jdbc.driver.OracleStatement.close(OracleStatement.java:848)
         at oracle.jdbc.driver.OraclePreparedStatement.privateClose(OraclePreparedStatement.java:351)
         at oracle.jdbc.driver.OraclePreparedStatement.close(OraclePreparedStatement.java:285)
         at oracle.jdbc.driver.OracleCallableStatement.close(OracleCallableStatement.java:876)
         at oracle.jdbc.oracore.OracleTypeADT.initMetadata(OracleTypeADT.java:579)
         at oracle.jdbc.oracore.OracleTypeADT.init(OracleTypeADT.java:406)
         at oracle.sql.ArrayDescriptor.initPickler(ArrayDescriptor.java:1023)
         at oracle.sql.ArrayDescriptor.<init>(ArrayDescriptor.java:137)
         at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:102)
    I'm using oracle jdbc thin driver.
    As data source class I'm using jdbc.pool.OracleConnectionCacheImpl.
    Anyone have a clue what is happening?

    Have you resolved this? I am getting the same error, but after restarting my webserver and re-establishing my connection pools it works(for a while). I need to find the root.
    Thanks for any help,
    Mark

  • Sub VI to enter database data taking more time when calling from main VI

    Hi All,
    I created a sub vi to enter data to a new database, after reading from another database. when i executed that sub vi alone, it took only 2 minutes to enter 20000 records. But when i called that sub VI from my main VI, its taking 35 minutes to enter 20000 records. 
    my maiin vi has another while loop running parallelly which will perform some other operations. How to handle memory in this case? i mean when i call my sub vi from main vi, i need to give complete processor memory for that sub vi. is it possible?
    please help. thanks in advance.
    Sooraj

    Hi Oliver,
    in your example the numeric data is passed from sub-vi to main only when sub-vi terminates, this is what it's supposed to be when you fetch the data from the connector output of a sub-vi.
    You can use queues function to exchange data between sub-vi and main.vi; take a look at the example Message Logging with Named Queue.vi.
    An alternative method is passing to sub-vi a reference of an indicator (or control) and update its value on the fly.
    See example.
    Alberto
    Attachments:
    passing_data_from_sub-vi.llb ‏35 KB

  • Data security (Data from SAP BW) for AD users

    Hi  All,
    I have a scenario.
    BO env : Business Objects 3.1 Sp3
    Sap Integration kit Sp3
    My target is to implement AD SSO & also provide data security for data from SAP BW. Currently there are no roles & authorization defined in the sap System. My plan was
    Step 1:-  Implement AD SSO in Business Objects
    Step 2:  Map the AD users in SAP system
    Step 3:- Crate roles in SAP System
    Step 4:-  Assign the users roles
    Steps 5:- (Not sure) :-  Map the users (Now in SAP) to BO & then aliases them with the users from AD.
    Pleas let me know if this would be correct approach... if not please suggest.... I am kind of new to SAP BO integration with experience in BO admin

    Step 1: Setup Windows AD SSO on your BOBJ server
    Step 2: Import Windows AD groups in BO
    Step 2-  Setup Server-side SNC between BO and your SAP system
    Step 3:- Create roles in SAP System and import them in BO
    Step 4:-  Assign SAP users the created roles
    Step 5: - In the CMC create SAP aliases for your Windows AD accounts
    Step 6: - Setup your reports and/or universe connections to use SSO.
    For more information on server side SNC check the installation guide of the integration Kit.
    Regards,
    Stratos

  • Using a second table in a Database Data Block ??

    In a Form, I have a Data Block which is a Database Data Block. The Items are associated with columns in a table.
    I want the items in this repeating block to show in a different order. To do this, I need to use a second table and say where table1.key = table2.key ....
    I keep getting problems at runtime with
    ORA-00918: column ambiguously defined
    I tried to qualify everywhere a column name is used. When I do show error it shows
    SELECT ROWID, ....
    And then the "column ambiguously defined".
    I do not have an item in my Form for ROWID. Maybe it is automatic. (This form DOES do update).
    Is it possible to use two tables in a Data Block like this?
    Thanks

    If you only need to order the records in the block, why not defining the "ORDER BY" clause in the block's property??
    Set the "ORDER BY" clause at design time from the property palette of the block or runtime with column of your choice.
    at runtime your can use:
    SET_BLOCK_PROPERTY('your_block', ORDER_BY, 'your_column');If you need to join to tables in one block read the [Block Based on Join|http://www.oracle.com/technology/products/forms/pdf/BlockOnAJoin.pdf] Documentation.
    Tony

Maybe you are looking for