Characterset WE8ISO8859P1
Hi,
I tried to install Oracle Database version 11.2.0.1.0 on windows 7, on time of selecting characterset i don't find WE8ISO8859P1 and it give me only two option which is WE8MSWIN1252 and unicode, since i want to install WE8ISO8859P1 characterset because of using transalationhub.
Thanks in Advance.
Regards
NomanHaq
I have tried to run throuh following emca command
C:\app\Window7\product\11.2.0\dbhome_1\BIN>emca -config dbcontrol db -repos create
STARTED EMCA at Jun 21, 2012 10:22:34 AM
EM Configuration Assistant, Version 11.2.0.0.2 Production
Copyright (c) 2003, 2005, Oracle. All rights reserved.
Enter the following information:
Database SID: orcl
Listener port number: 1521
Listener ORACLE_HOME [ C:\app\Window7\product\11.2.0\dbhome_1 ]:
Password for SYS user:
Password for DBSNMP user:
Password for SYSMAN user:
Email address for notifications (optional):
Outgoing Mail (SMTP) server for notifications (optional):
You have specified the following settings
Database ORACLE_HOME ................ C:\app\Window7\product\11.2.0\dbhome_1
Local hostname ................ 192.168.127.138
Listener ORACLE_HOME ................ C:\app\Window7\product\11.2.0\dbhome_1
Listener port number ................ 1521
Database SID ................ orcl
Email address for notifications ...............
Outgoing Mail (SMTP) server for notifications ...............
Do you wish to continue? [yes(Y)/no(N)]: y
Jun 21, 2012 10:23:53 AM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at C:\app\Window7\cfgtoollogs\emca\orcl\emc
a_2012_06_21_10_22_33.log.
Jun 21, 2012 10:24:05 AM oracle.sysman.emcp.util.FileUtil backupFile
WARNING: Could not backup file C:\app\Window7\product\11.2.0\dbhome_1\sysman\con
fig\emd.properties
Jun 21, 2012 10:24:05 AM oracle.sysman.emcp.util.FileUtil backupFile
WARNING: Could not backup file C:\app\Window7\product\11.2.0\dbhome_1\sysman\con
fig\emoms.properties
Jun 21, 2012 10:24:05 AM oracle.sysman.emcp.util.FileUtil backupFile
WARNING: Could not backup file C:\app\Window7\product\11.2.0\dbhome_1\sysman\emd
\targets.xml
Jun 21, 2012 10:24:05 AM oracle.sysman.emcp.EMReposConfig createRepository
INFO: Creating the EM repository (this may take a while) ...
Jun 21, 2012 10:24:06 AM oracle.sysman.emcp.EMReposConfig invoke
SEVERE: Error creating the repository
Jun 21, 2012 10:24:06 AM oracle.sysman.emcp.EMReposConfig invoke
INFO: Refer to the log file at C:\app\Window7\cfgtoollogs\emca\orcl\emca_repos_c
reate_<date>.log for more details.
Jun 21, 2012 10:24:06 AM oracle.sysman.emcp.EMConfig perform
SEVERE: Error creating the repository
Refer to the log file at C:\app\Window7\cfgtoollogs\emca\orcl\emca_2012_06_21_10
_22_33.log for more details.
Could not complete the configuration. Refer to the log file at C:\app\Window7\cf
gtoollogs\emca\orcl\emca_2012_06_21_10_22_33.log for more details.
But at the end it gave me this error and produce following log:
Could not complete the configuration. Refer to the log file at C:\app\Window7\cfgtoollogs\emca\orcl\emca_2012_06_21_10_22_33.log for more details.
Log File:
Jun 21, 2012 10:10:15 AM oracle.sysman.emcp.util.OUIInventoryUtil setOUILoc
CONFIG: Setting oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:15 AM oracle.sysman.emcp.util.ClusterUtil isHASInstalled
CONFIG: isHAInstalled: false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag '-migrate' set to false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag 'migrateFromDBControl' set to false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag 'migrateToCentralAgent' set to false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag 'migrateFromCentralAgent' set to false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag 'migrateToDBControl' set to false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setFlag
CONFIG: Flag 'db' set to true
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setParam
CONFIG: Setting param: ORACLE_HOME value: C:\app\Window7\product\11.2.0\dbhome_1
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.EMConfig isEMConfigured
CONFIG: isEMConfigured for DB: orcl
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.util.PlatformInterface isPre112Home
CONFIG: oracleHome: C:\app\Window7\product\11.2.0\dbhome_1 isPre112Home: false
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager setParam
CONFIG: Setting param: DB_UNIQUE_NAME value: orcl
Jun 21, 2012 10:10:16 AM oracle.sysman.emcp.ParamsManager getParam
CONFIG: No value was set for the parameter ORACLE_HOSTNAME.
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.ClusterUtil isCRSInstalled
CONFIG: isCRSInstalled: false
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.ClusterUtil getLocalNode
CONFIG: Cluster.isCluster: false. Skip call to getLocalNode
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.ClusterUtil getLocalNode
CONFIG: isLocalNodeDone: true localNode: null
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.DBControlUtil isDBConsoleConfigured
CONFIG: Sid: orcl Host: 192.168.127.138 Node: null OH: C:\app\Window7\product\11.2.0\dbhome_1 isDBC: false
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.ParamsManager setParam
CONFIG: Setting param: DB_UNIQUE_NAME value: orcl
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.PlatformInterface isPre112Home
CONFIG: oracleHome: C:\app\Window7\product\11.2.0\dbhome_1 isPre112Home: false
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.ParamsManager getParam
CONFIG: No value was set for the parameter ORACLE_HOSTNAME.
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.ClusterUtil getLocalNode
CONFIG: isLocalNodeDone: true localNode: null
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.CentralAgentUtil isCentralAgentConfigured
CONFIG: Sid: orcl Host: 192.168.127.138 Node: null OH: C:\app\Window7\product\11.2.0\dbhome_1 agentHome: null isCentral: false
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil setOUILoc
CONFIG: Setting oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil isValidOH
CONFIG: Invalid oracleHome: C:\OraHome_2
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil isValidOH
CONFIG: Invalid oracleHome: C:\app\Window7\product\11.2.0\dbhome_2
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.CentralAgentUtil getCentralAgentHomeAndURL
CONFIG: Central Agent home and URL: {}
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil setOUILoc
CONFIG: Setting oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil isValidOH
CONFIG: Invalid oracleHome: C:\OraHome_2
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.OUIInventoryUtil isValidOH
CONFIG: Invalid oracleHome: C:\app\Window7\product\11.2.0\dbhome_2
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.util.CentralAgentUtil getURLAndCentralAgentHome
CONFIG: URL and Central Agent home : {}
Jun 21, 2012 10:10:28 AM oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to C:\app\Window7\product\11.2.0\dbhome_1\oui
Jun 21, 2012 10:11:12 AM oracle.sysman.emcp.EMConfig finalize
CONFIG: finalize() called for EMConfig
Similar Messages
-
Is there a benefit of characterset WE8ISO8859P1 vs WE8ISO8859P15? Differences?
Hello all,
I'm getting ready to clone a database, and I'm on the new server running dbca.
I'm at the characterset section, and on the original database, I see the characterset is WE8ISO8859P1. However, this isn't "found" when the Show Recommended character sets only box is checked. It shows WE8ISO8859P15 only until the box is un-checked.
They both say they are West European.
Is there a real difference between the two? Should I change from the WE8ISO8859P1 to the WE8ISO8859P15 for any good reason? I'm planning to export out of the older database and import into the newer one, will changing the characterset here cause any problems?
So far, I've not been able to find much on the web about the differences between the two, and wondered if anyone here had experience with this.
Thanks in advance,
cayenneThere is a great ML document
Choosing between WE8ISO8859P1, WE8ISO8859P15 or WE8MSWIN1252 as NLS_CHARACTERSET [ID 264294.1]
which in line with what others already suggested, and I agree that you should stick to AL32UTF8 flexible globalization support in your application is important and you want to avoid headaches in the future with export-import to a database when you'll need all of a sudden a new region to support.
8859p1 is binary subset of win1252 (no recoding is needed). So in this case choice is simple.
8859p15 is logical subset of win1252 (the latter has all characters that p15 has, but they may just have different codes).
Bottom line. AL32UTF8 whenever you can. If you got to use one-byte charsets and sacrifice flexibility of Unicode, use we8mswin1252 for western European languages. -
Database: 10.2.0.1
sql> select * from nls_database_parameters t where t.parameter like '%CHARACTERSET%';
PARAMETER VALUE
==============================================
NLS_CHARACTERSET AL32UTF8
NLS_NCHAR_CHARACTERSET AL16UTF16
OS: RHEL5
$ export | grep LANG
declare -x LANG="en_US.UTF-8"
declare -x NLS_LANG="GERMAN_GERMANY.WE8ISO8859P1"
I have file in latin1 codepage.
When I create external table (organization external type oracle_loader) I have problems with loading the Ü symbols in this file to the database:
a;b;c;Ü;d <- row inserted
Ü;a;b;c;d <- row inserted
a;b;c;d;Ü <- row failed to insert
KUP-04021: field formatting error for 1 field
KUP-04101: record 1 rejected in file latin1.csv
When I explicitly create external table with "characterset WE8ISO8859P1" clause the latin1 file loads successfully.
When I load the UTF8 file using external table which was created without clause "characterset WE8ISO8859P1" the file is loads OK too.
I want to know the process - why the characterset conversion from latin1 file (WE8ISO8859P1) to UTF8 database for some reason fails?
Is there possible to import latin1 files and do not specify the codepage in the external table DDL (seems that NLS_LANG env variable does not affect SQL*Loader external table)?
From documentation:
Specifying the CHARACTERSET parameter tells SQL*Loader the character set of the input datafile. The default character set for all datafiles, if the CHARACTERSET parameter is not specified, is the session character set defined by the NLS_LANG parameter. Only character data (fields in the SQL*Loader datatypes CHAR, VARCHAR, VARCHARC, numeric EXTERNAL, and the datetime and interval datatypes) is affected by the character set of the datafile.
Edited by: lynx™ on 15.07.2010 7:46Hi Andre,
this is how I teach my classes normally!
You need to be aware of some changes you make with NLS_TERRITORY, which is part of NLS_LANG:
--> if you set NLS_TERRITORY to anohter value then you implicitly change the settings for NLS_NUMERIC_CHARACTERS => , although it is the same with america and australia obviousely the first digit here is the decimal separator and the second one is the grand seperator, thisn can destroy all numeric values if it is set impropper !!!
NLS_DATE_FORMAT,
NLS_TIMESTAMP_FORMAT,
AND NLS_CURRENCY.
SYS @10gR2 SQL select * from v$nls_parameters
PARAMETER VALUE
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RRNLS_DATE_LANGUAGE AMERICAN
NLS_CHARACTERSET WE8ISO8859P1
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
19 rows selected.
SYS @10gR2 SQL > alter session set NLS_TERRITORY=australia;
SYS @10gR2 SQL > select * from v$nls_parameters
2 ;
PARAMETER VALUE
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AUSTRALIA
NLS_CURRENCY $
NLS_ISO_CURRENCY AUSTRALIA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD/MON/RR
NLS_DATE_LANGUAGE AMERICAN
NLS_CHARACTERSET WE8ISO8859P1
NLS_SORT BINARY
NLS_TIME_FORMAT HH12:MI:SSXFF AM
NLS_TIMESTAMP_FORMAT DD/MON/RR HH12:MI:SSXFF AM
NLS_TIME_TZ_FORMAT HH12:MI:SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD/MON/RR HH12:MI:SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE -
PlsqlNLSLanguage WE8ISO8859P1 vs AL32UTF8
Hi,
I upgraded to 3.0.1 and I am having some issues with apostrophe when I switch the PlsqlNLSLanguage from WE8ISO8859P1 to AL32UTF8.
I did run the OWAINST script to upgrade Web Toolkit.
So my pages displays correctly except for those apostrophe that shows as little squares.
If I use WE8ISO8859P1 , everything displays and inserts correctly. Why can't I keep this setting for PlsqlNLSLanguage ?
If I use AL32UTF8 , when I insert, the apostrophe shows as reversed questionmarks ( de l¿AQIII ). When I select apostrophe inserted in WE8ISO8859P1 , it shows as little boxes. (de l�AQIII )
I am kind of stuck with this.
Anybody experiencing this behaviour ?
Normal apostrophe works, it's when I cut and paste from Word that it does not inserts correctly.
I am using APEX 3.0.1
OWA 10.1.2.0.6
DB : 10.1.0.5.0
DB Characterset : WE8ISO8859P1
Thanks
Francis.Hi Francis,
Thanks for explaining this and thanks for including the information in #4. You have stated precisely your issue.
The fundamental problem is you are attempting to include the MS Word-generated apostophe, in your data. This character is known as RIGHT SINGLE QUOTATION MARK, Unicode character U+2019, AL32UTF8 codepoint E28099. There is no equivalent codepoint in your database character set, WE8ISO8859P1 which can accommodate this character.
Of course, you're going to ask, why wasn't this a problem before? And that's because in HTML DB 1.6 and earlier, when the database character set matched the DAD character set, no character set conversion was attempted. So even though the character couldn't directly be accommodated in WE8ISO8859P1, the bytes were stored as is.
Now, in HTML DB 2.0 and APEX 3.0 and later, the DAD character set must be AL32UTF8. So there will be character set conversion between mod_plsql and your database - on data going into the database and data coming out of the database.
Unfortunately, the DAD character set must be AL32UTF8 in APEX 3.0 - otherwise, you'll run into trouble later - guaranteed. The only viable solution for you, as I see it, is either change your database character set to AL32UTF8 or somehow avoid entering these characters.
I hope this helps.
Joel -
Import WE8ISO8859P1 to IW8ISO8859P8 or IW8MSWIN1255
Hello,
I have an Oracle 8I database with charset defined to WE8ISO8859P1.
It contains Hebrew characters.Is there a way to convert it to IW8ISO8859P8 or IW8MSWIN1255 directly or by export/import ? What about importing to 10g ?
Os WinXP/2003.Basic problem is you have a characterset (WE8ISO8859P1), which cannot store hebrew characters, because it's a western-european characterset set. Despite of this it seems to work, because as long as your client characterset is also WE8ISO8859P1 no characterset conversion happens and you get back, what you typed in. But the internal storage in the database is wrong.
When you now try to import your database into another one having characterset IW8MSWIN1255 (correct characterset for hebrew characters) conversion will happen and will fail. Very likely you will see '?' . You get the internal coding by 'select dump(column_name) from table_name;', correct hebrew characters are in range 224-250.
Werner -
Error while loading data from flat file to Oracle DB
I am new to ODI. I am trying to load data from a flat file to Oracle DB using the LKM File to Oracle (External Table) and using the IKM Oracle Incremental Update. I am getting the following exception during the "Create External Table" stage:
org.apache.bsf.BSFException: exception from Jython:
Traceback (most recent call last):
File "<string>", line 44, in <module>
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:202)
at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1110)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:2251)
at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:2192)
at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
java.sql.SQLException: java.sql.SQLException: ORA-30088: datetime/interval precision is out of range
at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2473)
at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:48)
at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:561)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:464)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2093)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:83)
at java.lang.Thread.run(Thread.java:662)
Caused by: Traceback (most recent call last):
File "<string>", line 44, in <module>
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:202)
at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1110)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:2251)
at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:2192)
at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
java.sql.SQLException: java.sql.SQLException: ORA-30088: datetime/interval precision is out of range
at org.python.core.PyException.fillInStackTrace(PyException.java:70)
at java.lang.Throwable.<init>(Throwable.java:181)
at java.lang.Exception.<init>(Exception.java:29)
at java.lang.RuntimeException.<init>(RuntimeException.java:32)
at org.python.core.PyException.<init>(PyException.java:46)
at org.python.core.PyException.<init>(PyException.java:43)
at org.python.core.Py.JavaError(Py.java:455)
at org.python.core.Py.JavaError(Py.java:448)
at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:177)
at org.python.core.PyObject.__call__(PyObject.java:355)
at org.python.core.PyMethod.__call__(PyMethod.java:215)
at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:221)
at org.python.core.PyMethod.__call__(PyMethod.java:206)
at org.python.core.PyObject.__call__(PyObject.java:397)
at org.python.core.PyObject.__call__(PyObject.java:401)
at org.python.pycode._pyx1.f$0(<string>:50)
at org.python.pycode._pyx1.call_function(<string>)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
at org.python.core.PyCode.call(PyCode.java:18)
at org.python.core.Py.runCode(Py.java:1204)
at org.python.core.Py.exec(Py.java:1248)
at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:172)
at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2472)
at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:47)
at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:558)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:464)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2093)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
... 1 more
Caused by: java.sql.SQLException: ORA-30088: datetime/interval precision is out of range
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:202)
at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1110)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:2251)
at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:2192)
at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:175)
... 33 more
Could anyone please provide any pointers.
Thanks,
Srini.The code that is executed is as follows:
createTblCmd = r"""
create table ODITEMP.C$_0PARTNER
C1_C1 NUMBER(14),
C2_C2 VARCHAR2(12),
C3_C3 VARCHAR2(18),
C4_C4 NUMBER(7),
C5_C5 TIMESTAMP(11)
ORGANIZATION EXTERNAL
TYPE ORACLE_LOADER
DEFAULT DIRECTORY dat_dir
ACCESS PARAMETERS
RECORDS DELIMITED BY 0x'0D0A'
CHARACTERSET 'WE8ISO8859P1'
STRING SIZES ARE IN CHARACTERS
BADFILE 'partners.txt_%a.bad'
LOGFILE 'partners.txt_%a.log'
DISCARDFILE 'partners.txt_%a.dsc'
SKIP 0
FIELDS
MISSING FIELD VALUES ARE NULL
C1_C1 POSITION(1:14) ,
C2_C2 POSITION(15:26) ,
C3_C3 POSITION(27:44) ,
C4_C4 POSITION(45:51) ,
C5_C5 POSITION(52:62)
LOCATION ('partners.txt')
PARALLEL
REJECT LIMIT UNLIMITED
# Create the statement
myStmt = myCon.createStatement()
# Execute the trigger creation
myStmt.execute(createTblCmd)
myStmt.close()
myStmt = None
# Commit, just in case
myCon.commit() -
Field in data file exceeds maximum length - CTL file error
Hi,
I am loading data in new system using CTL file. But I am getting error as 'Field in data file exceeds maximum length' for few records, other records are processed successfully. I have checked the length of the error record in the extract file, it is less than the length in the target table, VARCHAR2 (2000 Byte). Below is the example of error data,
Hi Rebecca~I have just spoken to our finance department and they have agreed that the ABCs payments made can be allocated to the overdue invoices, can you send any future invoices direct to me so that I can get them paid on time.~Hope this is ok ~Thanks~Terry~
Is this error caused because of the special characters in the string?
Below is the ctl file I am using,
OPTIONS (SKIP=2)
LOAD DATA
CHARACTERSET WE8ISO8859P1
INFILE '$FILE'
APPEND
INTO TABLE "XXDM_DM_17_ONACCOUNT_REC_SRC"
WHEN (1)!= 'FOOTER='
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS (
<Column_name>,
<Column_name>,
COMMENTS,
<Column_name>,
<Column_name>
Thanks in advance,
AdityaHi,
I suspect this is because of the built in default length of character datatypes in sqldr - it defaults to char(255) taking no notice of what the actual table definition is.
Try adding CHAR(2000), to your controlfile so you end up with something like this:
OPTIONS (SKIP=2)
LOAD DATA
CHARACTERSET WE8ISO8859P1
INFILE '$FILE'
APPEND
INTO TABLE "XXDM_DM_17_ONACCOUNT_REC_SRC"
WHEN (1)!= 'FOOTER='
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS (
<Column_name>,
<Column_name>,
COMMENTS CHAR(2000),
<Column_name>,
<Column_name>
Cheers,
Harry -
DISPLAYNAME_CONVERSION_ERROR in XML DB
Hello,
After I have installed Oracle 10g Release 2 patchetset 1 (10.2.0.2.0), I have created a new database (the previous one was disabled after the update process, I suppose I did not make all steps well). This new database has the NLS parameters following:
nls_language: SPANISH
nls_territory: SPAIN
Database Characterset: WE8ISO8859P1
National Characterset: AL16UTF16
OK!, now I have registered my schema (encoding='ISO8859-1') and I uploaded some examples files based in this XSD (encoding='ISO8859-1') to the XML DB Repository through WebDAV.
After this, I have closed the WebDAV session and I opened a new session with the File Manager. When I access to the folder that it contain the files, Oracle show a DISPLAYNAME_CONVERSION_ERROR. I have detected that this error is showed when the file contain 'ñ' character.
If I make the connection with a Web Browser (iExplorer or Firefox) all files names are showed correctly.
With Windows FTP Client, the 'ñ' is showed as '±'.
I tried the same with a commercial FTP Client and the names are showed correctly.
I was thinking a database characterset based in ISO-8859-1 will be a better standard option than others.
I must delete the current database and to create another with a database characterset based in WE8MSWIN1252 (or similar) or there is an easy way to solve this problem?.
In my previous configuration (10.2.0.1) all was working fine based in WE8WIN1252.
The operating system is Windows XP Service Pack 2.
Thanks in advanced,
David.
Mensaje editado por:
David2005There does not appear to be a fast, support way to change the database character set. However I was under the impression you were creating a new database anyway in which case I would recommend selecting the AL32UTF8 character set.
-
URGENT Problem with Greek Character from an Oracle database
Hello, I am having a serious and urgent problem with the character settings of an oracle database (8.1.7). The database is sitting in a solaris unix server and when we run the env command we have the following in the NLS_LANG parameter: AMERICAN_AMERICA.WE8ISO8859P1 (I do not know if this is helpful). When I retrieve data from oracle database (through a VB.NET 2005 program)to a dataset I use a special font in order to see the greek characters (HELLASARIAL). But when I am trying to save these data to a TXT file the greek characters are like Chinese to us. I tried several encodings (System.Text.Encoding.GetEncoding(869)) but without success. Can someone tell me how to convert the oracle greek characters during the selection or during the saving to the TXT file?
Please respond as fast as you can.
Thanks in advanceHere is the answer of the microsoft:
I have the information that you have a VB.Net 2005 application connected to an Oracle database 8.1.7.4 hosted on a UNIX server.
This database has the CharacterSet WE8ISO8859P1.
When retrieving Greek characters from this database in the application, you cannot see them.
Could you please send me a screenshot of these characters in the .Net application?
Are they displayed as gibberish, or as inverted questions marks (?)?
I already had similar cases with Hebrew characters hosted on an Oracle database.
These characters were displayed as questions marks on the client side.
This is due to the fact that System.Data.OracleClient is using the Server CharacterSet to display the characters.
If your Greek characters are not stored in the WE8ISO8859P1 characterset, then they won’t display correctly on the client-side.
This is different from OLEDB where you could interact on client side by modifying the NLS_LANG parameter in the registry HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0.
The client NLS_LANG and the server CharacterSet had to match in order to correctly display the data, and avoid SQL*NET conversion.
So there are two solutions to your case:
- The first one is to create a new database using the P8 characterset. The Oracle .Net managed provider will so be able to use it and display the characters correctly.
- The second one is to use the OLEDB.Net managed provider, and then use OLEDB for Oracle provider. OLEDB will take care of the client NLS_LANG registry parameter.
Would it be possible to test your application against an Oracle database with WE8ISO8859P8 characterset?
Would it be possible to test it with the OLEDB .Net managed provider, and after checking the NLS_LANG client registry parameter? -
XML Parser for PL/SQL - charset
Hi,
I'm using XML Parser for PL/SQL and have some trouble with encoding of results xmldom.writeToBuffer and xmldom.writeToCLOB procedures.
Some tags in my DOM documents contain text values in RUSSIAN (server nls_charset is CL8ISO8859P5). When I write document in varchar2 variable, buffer content is in UTF8 encoding ( convert UTF8->CL8ISO8859P5 -OK).
xmldom.setCharset(doc, 'ISO-8859-5') just after xmldom.newDOMDocument has no effect.
xmldom.setCharset(doc, 'CL8ISO8859P5') has no effect also.
Explicit charset direction in third parameter of
xmldom.writeToBuffer and xmldom.writeToCLOB procedure has no effect.
When I write document in CLOB, and then read part of CLOB in varchar2 buffer - result contain '?' in place of all russian text characters.
What's a problem?
How can I force XML Parser write XML in server charset?
Platform:
Oracle8i Enterprise Edition Release 8.1.6.1.0
JServer Release 8.1.6.1.0
Oracle XML Parser for PL/SQL v 1.0.2I have the same problem. But in my case I am allowed only to use XML Parser for PL/SQL.
Characterset 'WE8ISO8859P1' is used. And the language is latvian.
After parsing a XML document and printing its contents, all latvian characters are replaced by "f".
xmldom.setcharset(doc,'WE8ISO8859P1') has no effect. -
ORA-00942 when creating external table under 10g with AQ
I have an application that runs with AQ. The front-end queues up batch-type
tasks in a queue. When one particular kind of message is dequeued, it
initiates a data load. That load requires the creation of an external
table.
The schema in question is owned by user BL (bulkload). The queue
is owned by BLB (bulkload batch), primarily to simplify some of the
rules needed by the resource manager in order to limit the total CPU
a batch process can consume. The BLB user has full access to the
BL schema, along with the following rights:
CREATE TYPE
CREATE TABLE
CREATE SEQUENCE
CREATE PROCEDURE
CREATE VIEW
CREATE SYNONYM
CREATE SEQUENCE
ALTER SESSION
CREATE SESSION
QUERY REWRITE
CREATE ANY CONTEXT
EXECUTE_CATALOG_ROLE
CREATE MATERIALIZED VIEW
CREATE ANY DIRECTORY
DROP ANY DIRECTORY
The table creation works fine under 9.2.0.8 (our current required
version). However the application generates an ORA-00942 table or view does
not exist when run under 10g (10.2.0.1 and 10.2.0.3).
The following statement is the problem:
CREATE TABLE bulkload33 (
field1 VARCHAR2(2000),field2 VARCHAR2(2000),field3 VARCHAR2(2000))
ORGANIZATION EXTERNAL (
TYPE oracle_loader DEFAULT DIRECTORY EXT_100
ACCESS PARAMETERS ( RECORDS DELIMITED BY "\r\n"
CHARACTERSET 'WE8ISO8859P1'
BADFILE EXT_100:'bulkload_bad.csv'
LOGFILE EXT_100:'bulkload_log.csv'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' MISSING FIELD VALUES ARE NULL REJECT ROWS WITH ALL NULL FIELDS (
field1 CHAR(2000),field2 CHAR(2000),field3 CHAR(2000),field4 CHAR(2000)))
LOCATION ('bulkload.csv')
) REJECT LIMIT UNLIMITED PARALLEL;
To clarify, the preceding statement, when handled by the process
for a queue message, failes with an ORA-00942.
Note that I can issue the command directly, as BLB or SYS, against
the BL schema with no problems. Further, as user BLB or SYS, I can do
the following:
CREATE OR REPLACE PROCEDURE dotest
IS
l_sql varchar2(2000);
BEGIN
l_sql := 'CREATE TABLE bulkload33 (
field1 VARCHAR2(2000),field2 VARCHAR2(2000),field3 VARCHAR2(2000))
ORGANIZATION EXTERNAL (
TYPE oracle_loader DEFAULT DIRECTORY EXT_100
ACCESS PARAMETERS ( RECORDS DELIMITED BY "\r\n"
CHARACTERSET ''WE8ISO8859P1''
BADFILE EXT_100:''bulkload_bad.csv''
LOGFILE EXT_100:''bulkload_log.csv''
FIELDS TERMINATED BY '',''
OPTIONALLY ENCLOSED BY ''"'' MISSING FIELD VALUES ARE NULL REJECT ROWS WITH ALL NULL FIELDS (
field1 CHAR(2000),field2 CHAR(2000),field3 CHAR(2000),field4 CHAR(2000)))
LOCATION (''bulkload.csv'')
) REJECT LIMIT UNLIMITED PARALLEL';
EXECUTE IMMEDIATE l_sql;
END;
show errors
EXEC dotest
Does anyone have any ideas of why this doesn't work under 10g? Metalink
has yielded no clues so far.
Thanks.Define "has full access to the BL schema" given that it is impossible to grant access rights, in Oracle, by schema. What was done and how was it done?
My guess is that the privs were granted in a role, rather than explicitly, as is required for PL/SQL. -
I created the external table ext_sftm (see create statement below) and it worked until I added MISSING FIELD VALUES ARE NULL.
Now when I run SELECT * FROM EXT_SFTM I get the following errors. [1]: (Error): ORA-29913: error in executing ODCIEXTTABLEOPEN callout ORA-29400: data cartridge error KUP-00554: error encountered while parsing access parameters KUP-01005: syntax error: found "missing": expecting one of: "exit, (" KUP-01007: at line 10 column 5 ORA-06512: at "SYS.ORACLE_LOADER", line 14 ORA-06512: at line 1
What am I doing wrong?
CREATE TABLE ext_sftm
(map_id NUMBER(38,0),
source_id NUMBER(38,0),
member_acis VARCHAR2(20),
source_facility_code VARCHAR2(50),
source_facility_name VARCHAR2(100),
source_facility_address VARCHAR2(40),
source_facility_city VARCHAR2(30),
source_facility_state CHAR(2),
source_facility_zip VARCHAR2(10),
source_name VARCHAR2(100))
ORGANIZATION EXTERNAL (
DEFAULT DIRECTORY DCS_DIR
ACCESS PARAMETERS(RECORDS DELIMITED BY NEWLINE CHARACTERSET WE8ISO8859P1
BADFILE 'DCS_DIR':'SFTM.bad'
LOGFILE 'SFTM.log'
READSIZE 1048576
SKIP 1
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
REJECT ROWS WITH ALL NULL FIELDS
MISSING FIELD VALUES ARE NULL
LOCATION (
DCS_DIR:'SFTM.csv'
REJECT LIMIT UNLIMITED
/According to Metalink note:
Subject: Select from external table gives ORA-29913 ORA-29400 KUP-00554 KUP-01005
Doc ID: Note:302672.1 Type: PROBLEM
Last Revision Date: 22-APR-2005 Status: MODERATED
This is an syntax error dues to wrong order of field definitions and record format info.
I suspect something wrong with this line:
REJECT ROWS WITH ALL NULL FIELDSSee following syntax diagram:
http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14215/img_text/et_fields_clause.htm
Message was edited by:
Pierre Forstmann
Message was edited by:
Pierre Forstmann -
How to load the international characters by using the SQL*Loader(UNIX)?
Hi Everyone,
I am not able to load the international characters thru SQL*Loader which is calling from Unix. Whenever I load these characters , appears in DB such as Square box. Please help me how to resolve the issue.
Using version is:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
PL/SQL Release 10.2.0.4.0 - Production
CORE 10.2.0.4.0 Production
TNS for IBM/AIX RISC System/6000: Version 10.2.0.4.0 - Productio
NLSRTL Version 10.2.0.4.0 - Production
Thanks in advance.
Regards,
Vissu.....This may help
SQL> CREATE TABLE test_sqlldr_unicode (id INTEGER, name VARCHAR2(100 BYTE));
Table created.Now my data file.
1,"ABóCD"
2,"öXYZó"
3,"EFGÚHIJK"
4,"øøøøøøøøøøøøøøø"My control file.
LOAD DATA
CHARACTERSET WE8ISO8859P1
INFILE 'C:\test_sqlldr_unicode.txt'
REPLACE
INTO TABLE test_sqlldr_unicode
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
(id INTEGER EXTERNAL , name )
{code}
Running the sqlldr
{code}
C:\>sqlldr USERID=hr/hr CONTROL=test_sqlldr_unicode.ctl LOG=test_sqlldr_unicode.
log
SQL*Loader: Release 10.2.0.1.0 - Production on Thu Dec 30 19:38:22 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Commit point reached - logical record count 5
C:\>
{code}
The table
{code}
SQL> SELECT * FROM test_sqlldr_unicode;
ID NAME
1 ABóCD
2 öXYZó
3 EFGÚHIJK
4 øøøøøøøøøøøøøøø
SQL>
{code} -
Issue while loading a csv file using sql*loader...
Hi,
I am loading a csv file using sql*loader.
On the number columns where there is data populated in them, decimal number/integers, the row errors out on the error -
ORA-01722: invalid number
I tried checking the value picking from the excel,
and found the chr(13),chr(32),chr(10) values characters on the value.
ex: select length('0.21') from dual is giving a value of 7.
When i checked each character as
select ascii(substr('0.21',5,1) from dual is returning a value 9...etc.
I tried the following command....
"to_number(trim(replace(replace(replace(replace(:std_cost_price_scala,chr(9),''),chr(32),''),chr(13),''),chr(10),'')))",
to remove all the non-number special characters. But still facing the error.
Please let me know, any solution for this error.
Thanks in advance.
Kirancontrol file:
OPTIONS (ROWS=1, ERRORS=10000)
LOAD DATA
CHARACTERSET WE8ISO8859P1
INFILE '$Xx_TOP/bin/ITEMS.csv'
APPEND INTO TABLE XXINF.ITEMS_STAGE
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS
ItemNum "trim(replace(replace(:ItemNum,chr(9),''),chr(13),''))",
cross_ref_old_item_num "trim(replace(replace(:cross_ref_old_item_num,chr(9),''),chr(13),''))",
Mas_description "trim(replace(replace(:Mas_description,chr(9),''),chr(13),''))",
Mas_long_description "trim(replace(replace(:Mas_long_description,chr(9),''),chr(13),''))",
Org_description "trim(replace(replace(:Org_description,chr(9),''),chr(13),''))",
Org_long_description "trim(replace(replace(:Org_long_description,chr(9),''),chr(13),''))",
user_item_type "trim(replace(replace(:user_item_type,chr(9),''),chr(13),''))",
organization_code "trim(replace(replace(:organization_code,chr(9),''),chr(13),''))",
primary_uom_code "trim(replace(replace(:primary_uom_code,chr(9),''),chr(13),''))",
inv_default_item_status "trim(replace(replace(:inv_default_item_status,chr(9),''),chr(13),''))",
inventory_item_flag "trim(replace(replace(:inventory_item_flag,chr(9),''),chr(13),''))",
stock_enabled_flag "trim(replace(replace(:stock_enabled_flag,chr(9),''),chr(13),''))",
mtl_transactions_enabled_flag "trim(replace(replace(:mtl_transactions_enabled_flag,chr(9),''),chr(13),''))",
revision_qty_control_code "trim(replace(replace(:revision_qty_control_code,chr(9),''),chr(13),''))",
reservable_type "trim(replace(replace(:reservable_type,chr(9),''),chr(13),''))",
check_shortages_flag "trim(replace(replace(:check_shortages_flag,chr(9),''),chr(13),''))",
shelf_life_code "trim(replace(replace(replace(replace(:shelf_life_code,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
shelf_life_days "trim(replace(replace(replace(replace(:shelf_life_days,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
lot_control_code "trim(replace(replace(:lot_control_code,chr(9),''),chr(13),''))",
auto_lot_alpha_prefix "trim(replace(replace(:auto_lot_alpha_prefix,chr(9),''),chr(13),''))",
start_auto_lot_number "trim(replace(replace(:start_auto_lot_number,chr(9),''),chr(13),''))",
negative_measurement_error "trim(replace(replace(replace(replace(:negative_measurement_error,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
positive_measurement_error "trim(replace(replace(replace(replace(:positive_measurement_error,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
serial_number_control_code "trim(replace(replace(:serial_number_control_code,chr(9),''),chr(13),''))",
auto_serial_alpha_prefix "trim(replace(replace(:auto_serial_alpha_prefix,chr(9),''),chr(13),''))",
start_auto_serial_number "trim(replace(replace(:start_auto_serial_number,chr(9),''),chr(13),''))",
location_control_code "trim(replace(replace(:location_control_code,chr(9),''),chr(13),''))",
restrict_subinventories_code "trim(replace(replace(:restrict_subinventories_code,chr(9),''),chr(13),''))",
restrict_locators_code "trim(replace(replace(:restrict_locators_code,chr(9),''),chr(13),''))",
bom_enabled_flag "trim(replace(replace(:bom_enabled_flag,chr(9),''),chr(13),''))",
costing_enabled_flag "trim(replace(replace(:costing_enabled_flag,chr(9),''),chr(13),''))",
inventory_asset_flag "trim(replace(replace(:inventory_asset_flag,chr(9),''),chr(13),''))",
default_include_in_rollup_flag "trim(replace(replace(:default_include_in_rollup_flag,chr(9),''),chr(13),''))",
cost_of_goods_sold_account "trim(replace(replace(:cost_of_goods_sold_account,chr(9),''),chr(13),''))",
std_lot_size "trim(replace(replace(replace(replace(:std_lot_size,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
sales_account "trim(replace(replace(:sales_account,chr(9),''),chr(13),''))",
purchasing_item_flag "trim(replace(replace(:purchasing_item_flag,chr(9),''),chr(13),''))",
purchasing_enabled_flag "trim(replace(replace(:purchasing_enabled_flag,chr(9),''),chr(13),''))",
must_use_approved_vendor_flag "trim(replace(replace(:must_use_approved_vendor_flag,chr(9),''),chr(13),''))",
allow_item_desc_update_flag "trim(replace(replace(:allow_item_desc_update_flag,chr(9),''),chr(13),''))",
rfq_required_flag "trim(replace(replace(:rfq_required_flag,chr(9),''),chr(13),''))",
buyer_name "trim(replace(replace(:buyer_name,chr(9),''),chr(13),''))",
list_price_per_unit "trim(replace(replace(replace(replace(:list_price_per_unit,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
taxable_flag "trim(replace(replace(:taxable_flag,chr(9),''),chr(13),''))",
purchasing_tax_code "trim(replace(replace(:purchasing_tax_code,chr(9),''),chr(13),''))",
receipt_required_flag "trim(replace(replace(:receipt_required_flag,chr(9),''),chr(13),''))",
inspection_required_flag "trim(replace(replace(:inspection_required_flag,chr(9),''),chr(13),''))",
price_tolerance_percent "trim(replace(replace(replace(replace(:price_tolerance_percent,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
expense_account "trim(replace(replace(:expense_account,chr(9),''),chr(13),''))",
allow_substitute_receipts_flag "trim(replace(replace(:allow_substitute_receipts_flag,chr(9),''),chr(13),''))",
allow_unordered_receipts_flag "trim(replace(replace(:allow_unordered_receipts_flag,chr(9),''),chr(13),''))",
receiving_routing_code "trim(replace(replace(:receiving_routing_code,chr(9),''),chr(13),''))",
inventory_planning_code "trim(replace(replace(:inventory_planning_code,chr(9),''),chr(13),''))",
min_minmax_quantity "trim(replace(replace(replace(replace(:min_minmax_quantity,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
max_minmax_quantity "trim(replace(replace(replace(replace(:max_minmax_quantity,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
planning_make_buy_code "trim(replace(replace(:planning_make_buy_code,chr(9),''),chr(13),''))",
source_type "trim(replace(replace(:source_type,chr(9),''),chr(13),''))",
mrp_safety_stock_code "trim(replace(replace(:mrp_safety_stock_code,chr(9),''),chr(13),''))",
material_cost "trim(replace(replace(:material_cost,chr(9),''),chr(13),''))",
mrp_planning_code "trim(replace(replace(:mrp_planning_code,chr(9),''),chr(13),''))",
customer_order_enabled_flag "trim(replace(replace(:customer_order_enabled_flag,chr(9),''),chr(13),''))",
customer_order_flag "trim(replace(replace(:customer_order_flag,chr(9),''),chr(13),''))",
shippable_item_flag "trim(replace(replace(:shippable_item_flag,chr(9),''),chr(13),''))",
internal_order_flag "trim(replace(replace(:internal_order_flag,chr(9),''),chr(13),''))",
internal_order_enabled_flag "trim(replace(replace(:internal_order_enabled_flag,chr(9),''),chr(13),''))",
invoice_enabled_flag "trim(replace(replace(:invoice_enabled_flag,chr(9),''),chr(13),''))",
invoiceable_item_flag "trim(replace(replace(:invoiceable_item_flag,chr(9),''),chr(13),''))",
cross_ref_ean_code "trim(replace(replace(:cross_ref_ean_code,chr(9),''),chr(13),''))",
category_set_intrastat "trim(replace(replace(:category_set_intrastat,chr(9),''),chr(13),''))",
CustomCode "trim(replace(replace(:CustomCode,chr(9),''),chr(13),''))",
net_weight "trim(replace(replace(replace(replace(:net_weight,chr(9),''),chr(13),''),chr(32),''),chr(10),''))",
production_speed "trim(replace(replace(:production_speed,chr(9),''),chr(13),''))",
LABEL "trim(replace(replace(:LABEL,chr(9),''),chr(13),''))",
comment1_org_level "trim(replace(replace(:comment1_org_level,chr(9),''),chr(13),''))",
comment2_org_level "trim(replace(replace(:comment2_org_level,chr(9),''),chr(13),''))",
std_cost_price_scala "to_number(trim(replace(replace(replace(replace(:std_cost_price_scala,chr(9),''),chr(32),''),chr(13),''),chr(10),'')))",
supply_type "trim(replace(replace(:supply_type,chr(9),''),chr(13),''))",
subinventory_code "trim(replace(replace(:subinventory_code,chr(9),''),chr(13),''))",
preprocessing_lead_time "trim(replace(replace(replace(replace(:preprocessing_lead_time,chr(9),''),chr(32),''),chr(13),''),chr(10),''))",
processing_lead_time "trim(replace(replace(replace(replace(:processing_lead_time,chr(9),''),chr(32),''),chr(13),''),chr(10),''))",
wip_supply_locator "trim(replace(replace(:wip_supply_locator,chr(9),''),chr(13),''))"
Sample data from csv file.
"9901-0001-35","390000","JMKL16 Pipe bend 16 mm","","JMKL16 Putkikaari 16 mm","","AI","FJE","Ea","","","","","","","","","","","","","","","","","","","","","","","","","21-21100-22200-00000-00000-00-00000-00000","0","21-11100-22110-00000-00000-00-00000-00000","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","0.1","Pull","AFTER PROD","","","Locator for Production"
The load errors out on especially two columns :
1) std_cost_price_scala
2) list_price_per_unit
both are number columns.
And when there is data being provided on them. It errors out. But, if they are holding null values, the records go through fine.
Message was edited by:
KK28 -
How can an external table handle data with line feed between delimiters?
I have defined an external table as below. My data is pipe delimited and comes from a DOS system.
I already remove any carriage returns before putting the file into the DATA_DIR for reading. But
I have found that some of my VARCHAR fields have embeded line feeds.
Is it possible to have a definition that would remove any line feed characters between the delimiters?
Below I also threw together a sample data set there ID #2 has that extra character. Yes, I could
write an awk script to pre-process all my data files. But I am hoping there is a way for Oracle
to also do this.
I understand the LDTRIM to remove any leading and trailing spaces in the delimited field. Is there a
REPLACE or TRANSLATE option. I did a bit of searching but I must be asking the wrong things.
Thanks for any help
Eric
CREATE TABLE table_ext
id NUMBER,
desc1 VARCHAR2(64 CHAR),
desc2 VARCHAR2(255 CHAR),
add_date DATE
ORGANIZATION EXTERNAL
TYPE ORACLE_LOADER
DEFAULT DIRECTORY data_dir
ACCESS PARAMETERS
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8ISO8859P1
BADFILE log_dir:'table_ext.bad'
DISCARDFILE log_dir:'table_ext.dis'
LOGFILE log_dir:'table_ext.log'
FIELDS TERMINATED BY '|' LDRTRIM
MISSING FIELD VALUES ARE NULL
id INTEGER EXTERNAL(38),
desc1 CHAR(64),
desc2 CHAR(255),
add_date CHAR DATE_FORMAT DATE MASK "yyyy-mm-dd hh24:mi",
LOCATION( 'data.txt' )
PARALLEL
REJECT LIMIT UNLIMITED;
1|short desc|long desc|2001-01-01 00:00
2|short desc| long
desc |1999-03-03 23:23
3|short desc| long desc | 2011-02-02 02:02Thanks for looking. But that relates to the record delimiter which in my case is the pipe character '|'. In my various data sets this is consistent. I expect each record to be one per line. But between two delimiters some data has a line feed. So I'm looking for a method that will "cleanup" the field data as it gets imported.
I was hoping there was an option that would ignore any embedded line feeds (\n) characters. I.e., those not at the end of the line.
Eric
Maybe you are looking for
-
The line to type in under the tabs has disappeared. How do I get it back?
The line under the tabs-where I could type in a question, web site or view the web site address is missing. How do I get it back?
-
Timeout error while reading and updating in batches in a single transaction
Problem:- In a transaction I do read and update to the database in batches. First batch it runs fine and for second batch it get hanged at sqlCommand.ExecuteReader(). The following is not my complete code but required bits of it which will give more
-
Good Day, Hopefully someone here has the know why on this one. I have setup the Room Mailbox as per several online tutorials. From my Outlook 2013 I can access the room and its calendar. But when I create a new meeting request, I add myself as an Att
-
How to search a string from the database?
how to search a string from the database? starting with some character
-
Items start at login but are not in login items list
items start at login but are not in login items list