Hi,
I have had seen this problem on one of our client test systems. It has only happened when using oracle 9i, 8i is fine.
We had this problem where pro4/oracle9i seems to report the incorrect oracle error. I'm not sure whether Oracle or Pro4 is at fault. When I got the insufficient privs message, I did a low level Oracle trace and the problem was actually a Unique Constraint Error, Oracle error 00001. It seems similar to your problem where you get the problem with 'A' mode, but not with 'B' mode.
I would suspect that, when in 'A' mode, the function tries to add the same key/row twice in Oracle, which will throw up an ORA-0001- Unique Constraint Violation. In 'B' mode, the functions will probably Insert the record and then do an Update, which is why you don't see the error in 'B' mode, as Oracle is fine with that.
I would suggest checking the function to make sure that every Key/Row that it tries to Insert is unique, maybe add some UMSG's.
HTH
Doug
- ProIV Resource Centre
- → Viewing Profile: Posts: Doug Smith
Community Stats
- Group Members
- Active Posts 23
- Profile Views 5,198
- Member Title Member
- Age 56 years old
- Birthday May 23, 1969
-
Gender
Male
-
Location
New York, United States
Previous Fields
-
First Name
Doug
-
Surname
Smith
-
Nationality
Scottish
-
Year Started ProIV
1991
-
Highest ProIV Version Used
4.6
-
Company Working For
Wall Street Systems
-
Companies Worked For
CSC Sweden,
MDIS,
Glovia,
DIRECT LINE
0
Neutral
User Tools
Friends
Doug Smith hasn't added any friends yet.
Latest Visitors
Posts I've Made
In Topic: Insufficient privilege fro attempted operation
03 July 2003 - 05:20 AM
In Topic: Sun Solaris Pro-iv Error
20 December 2001 - 07:19 PM
Another important environment variable to check is $LD_LIBRARY_PATH. It should look something like.
LD_LIBRARY_PATH=/opt/app/oracle/product/8.1.7/lib
Which is basically $ORACLE_HOME/lib.
LD_LIBRARY_PATH=/opt/app/oracle/product/8.1.7/lib
Which is basically $ORACLE_HOME/lib.
In Topic: Sun Solaris Pro-iv Error
20 December 2001 - 07:12 PM
Have you set $ORACLE_HOME in the environment. You should also append it to $PATH.
solaris > echo $ORACLE_HOME
/opt/app/oracle/product/8.1.7
solaris > echo $PATH
/test/bin:/usr/local/bin:/usr/bin::.:/opt/app/oracle/product/8.1.7/bin
If you have that, does libclntsh.so.8.0 exist in $ORACLE_HOME/lib?
The client shared libraries are created by running $ORACLE_HOME/bin/genclntsh.
HTH
HTH
solaris > echo $ORACLE_HOME
/opt/app/oracle/product/8.1.7
solaris > echo $PATH
/test/bin:/usr/local/bin:/usr/bin::.:/opt/app/oracle/product/8.1.7/bin
If you have that, does libclntsh.so.8.0 exist in $ORACLE_HOME/lib?
The client shared libraries are created by running $ORACLE_HOME/bin/genclntsh.
HTH
HTH
In Topic: DASHES or Underscore
30 October 2001 - 03:54 AM
Rob
To add to Richards post, it would be advisable not to use any characters in a field/column name which can be construed as numeric operators within an SQL statement. So, the example of my-field could be parsed as column MY minus column FIELD as a numeric expression. I use this as an example as I suspect that the '-' would probably be trapped when creating the table in the first place. Also, Oracle uses '%' (LIKE statement) and '&' (Keyboard Input) so avoid them.
To quote the Oracle SQL manual, 'The names of Oracle identifiers, such as tables and columns, must not exceed 30 chars in length. The first char must be a letter, but the rest can be any combination of letters, numerals, dollar signs, pound signs and underscores.'
Also, if you use Oracle 8i, query the view V$RESERVED_WORDS to see words which should not be used for tables/columns or keywords(An example of a keyword would be a variable name within a PL/SQL block).
Doug
To add to Richards post, it would be advisable not to use any characters in a field/column name which can be construed as numeric operators within an SQL statement. So, the example of my-field could be parsed as column MY minus column FIELD as a numeric expression. I use this as an example as I suspect that the '-' would probably be trapped when creating the table in the first place. Also, Oracle uses '%' (LIKE statement) and '&' (Keyboard Input) so avoid them.
To quote the Oracle SQL manual, 'The names of Oracle identifiers, such as tables and columns, must not exceed 30 chars in length. The first char must be a letter, but the rest can be any combination of letters, numerals, dollar signs, pound signs and underscores.'
Also, if you use Oracle 8i, query the view V$RESERVED_WORDS to see words which should not be used for tables/columns or keywords(An example of a keyword would be a variable name within a PL/SQL block).
Doug
In Topic: Error 363 - Database connection dropped
11 September 2001 - 04:48 AM
Hi
Oracle have a document suggesting several fixes for intermittent SQL*NET problem on NT. The document is copyrighted so I can't post it here. It mentions synchronisation errors in the TCP/IP layer on NT as being a possible cause of the problems and provides details of fixes. If you have a an Oracle Support account on the internet, search for document 71921.1. Its titled 'ORA-12151, ORA-12571 errors on Windows NT'
Hope this helps
Doug
Oracle have a document suggesting several fixes for intermittent SQL*NET problem on NT. The document is copyrighted so I can't post it here. It mentions synchronisation errors in the TCP/IP layer on NT as being a possible cause of the problems and provides details of fixes. If you have a an Oracle Support account on the internet, search for document 71921.1. Its titled 'ORA-12151, ORA-12571 errors on Windows NT'
Hope this helps
Doug
- ProIV Resource Centre
- → Viewing Profile: Posts: Doug Smith
- Privacy Policy