ORA-01776: I can't insert on a view comprised by two tables
Good morning:
I'm trying to do an insertion on a view comprised by the join of two tables (departments and employees) and it failed.
The view is this one:
CREATE OR REPLACE FORCE VIEW "EMPDPTO" ("EMPLOYEE_ID", "LAST_NAME", "EMAIL", "HIRE_DATE", "JOB_ID", "DEPARTMENT_ID", "DEPARTMENT_NAME") AS
SELECT employee_id, last_name, email, hire_date, job_id, d.department_id, department_name
FROM employees e, departments d
WHERE e.department_id = d.department_id
My insertion command
INSERT INTO empdpto
VALUES(743, 'Bermejo', '[email protected]', '12/12/09', 'IT_PROG', 10, 'Administration');
throws a ORA-01776: it's not possible to modify more than one base table through a join union.
On the other side I've seen in documentation that in certain circunstances is possible to do an insertion on a complex view.
Is it possible to do an insertion on a view comprised by two tables?. Under what circunstances?.
Thanks
From SQL Reference CREATE VIEW section Notes on Updatable Views http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_8004.htm#i2065510
>
If you want a join view to be updatable, then all of the following conditions must be true:
The DML statement must affect only one table underlying the join.
For an INSERT statement, the view must not be created WITH CHECK OPTION, and all columns into which values are inserted must come from a key-preserved table. A key-preserved table is one for which every primary key or unique key value in the base table is also unique in the join view.
For an UPDATE statement, the view must not be created WITH CHECK OPTION, and all columns updated must be extracted from a key-preserved table.
>
The first condition is not true for the view you have created.
Edited by: P. Forstmann on 26 janv. 2010 20:17
Similar Messages
-
How can I inserting file's line into a oracle table in physycal order
How can I insert the file's line into a oracle table in the same physycal order that they exists in the file ?
I am using "SQL to FILE" km to performing file load into Oracle table, but the order which the records are insered into the oracle table doesn't match with the order of file's lines
How can I guarantee the same file's physycal order in the oracle table( target ) and file( source ) ?
Is it possible throught ODI ?
Thanks,
LucianaHi,
although I understand why use "File to Oracle( SQLLDR )" KM, I haven't the guarantee that in the agent's machine the Oracle Client installed and because when I openned the others projects I saw that anyone in my company use this KM( "File to Oracle( SQLLDR )" )
Tha's why I ask for anyone lead me whith the modification of the previous post in the "uLKM File to SQL", specifing the km step e where put the RECNUM pseudo column
This is fundamental for my ODI project
When I try to alter the "Create Work Table" and "Load Data" step of my "uLKM File to SQL" km, the execution returned me the error below:
=====================> Create Work Table Step
create table <@= vWorkTable @>
C1_LINHA_ARQ VARCHAR2(500) NULL, RECNUM NUMBER(10)
=====================> Load Data Step
select LINHA_ARQ C1_LINHA_ARQ
from TABLE
/*$$SNPS_START_KEYSNP$CRDWG_TABLESNP$CRTABLE_NAME=ARQ_INSS2SNP$CRLOAD_FILE=/arquivos_odi/ccrs/in/#CCRS_CAD_INSS.vpNOME_ARQUIVOSNP$CRFILE_FORMAT=DSNP$CRFILE_SEP_FIELD=09SNP$CRFILE_SEP_LINE=0D0ASNP$CRFILE_FIRST_ROW=0SNP$CRFILE_ENC_FIELD=SNP$CRFILE_DEC_SEP=SNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=LINHA_ARQSNP$CRTYPE_NAME=STRINGSNP$CRORDER=1SNP$CRLINE_OFFSET=1SNP$CRLENGTH=500SNP$CRPRECISION=500SNP$CR$$SNPS_END_KEY*/
insert into ODI_RUN_CONV.C$_0TMP_ODI_INSS_DADOS_ARQ
C1_LINHA_ARQ, RECNUM
values
:C1_LINHA_ARQ, RECNUM
=====================
984 : 42000 : java.sql.BatchUpdateException: ORA-00984: column not allowed here
984 : 42000 : java.sql.SQLSyntaxErrorException: ORA-00984: column not allowed here
java.sql.BatchUpdateException: ORA-00984: column not allowed here
at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:629)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9409)
at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:211)
at com.sunopsis.sql.SnpsQuery.executeBatch(Unknown Source)
...Thanks again gyus,
Luciana
Edited by: 933810 on 31/05/2012 06:04
Edited by: 933810 on 31/05/2012 06:07
Edited by: 933810 on 31/05/2012 06:14 -
Can't insert recors fetched by cursor in the table
HI
i am fetching records from my table total_budget.All the fetched records are displayed in a tabular data block(data block name is forecast_result).Now i want to insert these record fetched by cursor in my table forecast_resul which is empty.how can i do it.I am sending the code if any one can help............
When i execute this code it give me error unable to insert(FRM-40508) .I have carefully checked table columns names and their data types.All r fine but i dont know y it is not working.Here is the code
DECLARE
cursor c1 IS
SELECT ministry_id,fiscal_year ,t_amount
FROM total_budget
WHERE ministry_id=:global.var11 AND (fiscal_year BETWEEN :syear and :eyear);
BEGIN
T_XSUMX := 0;
OPEN C1;
X:=1;
SUMX := 0; SUMY := 0; SUMXY:=0; SUMX2 := 0;
go_block('forecast_result');
first_record;
LOOP
FETCH C1 INTO Y1,Y2,Y;
EXIT WHEN C1%NOTFOUND;
SUMY := SUMY +Y;
XY := X*Y;
X2 := X*X;
SUMX := SUMX + X;
SUMXY := SUMXY + XY;
SUMX2 := SUMX2 + X2;
:forecast_result.ministry_id:=Y1;
:forecast_result.fiscal_year:=Y2;
:forecast_result.t_amount:=Y;
NEXT_RECORD;
X := X + 1;
END LOOP;
close C1;
z:=X-2;
X_BAR := z;
X := z+1;
T_XSUMX := X * SUMX;
T_SUMY := SUMY * SUMX;
T_SUMX := SUMX * SUMX;
T_SUMXY := SUMXY * X;
T_SUMX2 := SUMX2 * X;
R1 := T_SUMY - T_SUMXY;
R2 := T_SUMX - T_SUMX2;
B := ROUND(R1/R2,1);
A := ROUND((T_SUMXY -(T_SUMX2*B))/T_XSUMX,1);
Y_BAR := A+(B*X_BAR);
:forecast_result.ministry_id:=Y1;
:forecast_result.fiscal_year:=Y2;
:forecast_result.t_amount:=Y_BAR;
next_record;
insert into forecast_result
values(:forecast_result.ministry_id,:forecast_result.fiscal_year,:forecast_result.t_amount);
commit;
END;
Can anyone tell me wat i am doing wrong
looking for instant reply
nidaHi alma,
Plz u dnt wrt babytalk rr SMS-language -> mi! Becoz mi don lejk dat.
I suppose that your data block "forecast_result" are based on the table of the same name. Otherwise this may be the cause of some of your trouble.
Your code would properly work better like this:
DECLARE
X NUMBER(38);
SUMX NUMBER(38);
SUMY NUMBER(38);
Y NUMBER(38) ;
Y1 varchar2(10);
Y2 varchar2(10);
X2 NUMBER(38);
XY NUMBER(38);
SUMXY NUMBER(38);
SUMX2 NUMBER(38);
X_BAR NUMBER(38);
Y_BAR NUMBER(38);
T_SUMY NUMBER(38);
T_SUMX NUMBER(38);
T_SUMXY NUMBER(38);
T_SUMX2 NUMBER(38);
T_XSUMX NUMBER(38);
R1 NUMBER(38);
R2 NUMBER(38);
A NUMBER(38);
z number(38);
B NUMBER(38);
final number(38);
-- Just curious, where does :syear and :eyear come from ??
cursor c1 IS
SELECT ministry_id, fiscal_year, t_amount
FROM total_budget
WHERE ministry_id=:global.var11
AND (fiscal_year BETWEEN :syear and :eyear);
BEGIN
T_XSUMX := 0;
X:=1;
SUMX := 0;
SUMY := 0;
SUMXY:=0;
SUMX2 := 0;
go_block('forecast_result');
-- If you're making this dynamically, then clear the block to start with.
clear_block(NO_COMMIT);
first_record;
OPEN C1;
LOOP
FETCH C1 INTO Y1, Y2, Y;
EXIT WHEN C1%NOTFOUND;
SUMY := SUMY + Y;
XY := X*Y;
X2 := X*X;
SUMX := SUMX + X;
SUMXY := SUMXY + XY;
SUMX2 := SUMX2 + X2;
:forecast_result.ministry_id := Y1;
:forecast_result.fiscal_year := Y2;
:forecast_result.t_amount := Y;
-- NO, this will not work. You have to CREATE the record. You only get the
-- first record for "free". Next_Record moves to allready existing records.
-- NEXT_RECORD;
Create_Record;
X := X + 1;
END LOOP;
close C1;
z := X - 2;
X_BAR := z;
X := z + 1;
T_XSUMX := X * SUMX;
T_SUMY := SUMY * SUMX;
T_SUMX := SUMX * SUMX;
T_SUMXY := SUMXY * X;
T_SUMX2 := SUMX2 * X;
R1 := T_SUMY - T_SUMXY;
R2 := T_SUMX - T_SUMX2;
B := ROUND(R1/R2,1);
A := ROUND((T_SUMXY -(T_SUMX2*B))/T_XSUMX,1);
Y_BAR := A+(B*X_BAR);
-- What are you doing here ?? This is weird. The population of the records are done in
-- the loop ! You don't have to add anything here.
-- :forecast_result.ministry_id:=Y1;
-- :forecast_result.fiscal_year:=Y2;
-- :forecast_result.t_amount:=Y_BAR;
-- Since your data block (hopefully) are based on the table of the same name, you DON'T
-- need to do this. You just have to press the commit button (or F10 or the floppy disk
-- icon or what-ever).
-- insert into forecast_result
-- values(:forecast_result.ministry_id,:forecast_result.fiscal_year,:forecast_result.t_amount);
-- commit;
END; -
How to insert data from APEX form into two tables
Hi,
I'm running APEX 4.1 with Oracle XE 11g, having two tables CERTIFICATES and USER_FILES. Some of the (useless) fields are cut to reduce information:
CREATE TABLE CERTIFICATES
CERT_ID NUMBER NOT NULL ,
CERT_OWNER NUMBER NOT NULL ,
CERT_VENDOR NUMBER NOT NULL ,
CERT_NAME VARCHAR2 (128) ,
CERT_FILE NUMBER NOT NULL ,
) TABLESPACE CP_DATA
LOGGING;
ALTER TABLE CERTIFICATES
ADD CONSTRAINT CERTIFICATES_PK PRIMARY KEY ( CERT_ID ) ;
CREATE TABLE USER_FILES
FILE_ID NUMBER NOT NULL ,
FILENAME VARCHAR2 (128) ,
BLOB_CONTENT BLOB ,
MIMETYPE VARCHAR2 (32) ,
LAST_UPDATE_DATE DATE
) TABLESPACE CP_FILES
LOGGING
LOB ( BLOB_CONTENT ) STORE AS SECUREFILE
TABLESPACE CP_FILES
STORAGE (
PCTINCREASE 0
MINEXTENTS 1
MAXEXTENTS UNLIMITED
FREELISTS 1
BUFFER_POOL DEFAULT
RETENTION
ENABLE STORAGE IN ROW
NOCACHE
ALTER TABLE USER_FILES
ADD CONSTRAINT CERT_FILES_PK PRIMARY KEY ( FILE_ID ) ;
ALTER TABLE CERTIFICATES
ADD CONSTRAINT CERTIFICATES_USER_FILES_FK FOREIGN KEY
CERT_FILE
REFERENCES USER_FILES
FILE_ID
NOT DEFERRABLE
What I'm trying to do is to allow users to fill out all the certificate data and upload a file in an APEX form. Once submitted the file should be uploaded in the USER_FILES table and all the fields along with CERT_ID, which is the foreign key pointing to the file in the USER_FILES table to be populated to the CERTIFICATES table. APEX wizard forms are based on one table and I'm unable to build form on both tables.
That's why I've created a view (V_CERT_FILES) on both tables and using INSTEAD OF trigger to insert/update both tables. I've done this before and updating this kind of views works perfect. Here is where the problem comes, if I'm updating the view all the data is updated correctly, but if I'm inserting into the view all the fields are populated at CERTIFICATES table, but for USER_FILES only the fields FILE_ID and LAST_UPDATE_DATE are populated. The rest three regarding the LOB are missing: BLOB_CONTENT, FILENAME, MIMETYPE. There are no errors when running this from APEX, but If I try to insert into the view from SQLDeveloper, I got this error:
ORA-22816: unsupported feature with RETURNING clause
ORA-06512: at line 1
As far as I know RETURNING clause in not supported in INSTEAD of triggers, although I didn't have any RETURNING clauses in my trigger (body is below).
Now the interesting stuff, after long tracing I found why this is happening:
First, insert is executed and the BLOB along with all its properties are uploaded to wwv_flow_file_objects$.
Then the following insert is executed to populate all the fields except the BLOB and it's properties, rowid is RETURNED, but as we know RETURNING clause is not supported in INSTEAD OF triggers, that's why I got error:
PARSE ERROR #1918608720:len=266 dep=3 uid=48 oct=2 lid=48 tim=1324569863593494 err=22816
INSERT INTO "SVE". "V_CERT_FILES" ( "CERT_ID", "CERT_OWNER", "CERT_VENDOR", "CERT_NAME", "BLOB_CONTENT") VALUES (:B1 ,:B2 ,:B3 ,:B4, ,EMPTY_BLOB()) RETURNING ROWID INTO :O0
CLOSE #1918608720:c=0,e=11,dep=3,type=0,tim=1324569863593909
EXEC #1820672032:c=3000,e=3168,p=0,cr=2,cu=4,mis=0,r=0,dep=2,og=1,plh=0,tim=1324569863593969
ERROR #43:err=22816 tim=1324569863593993
CLOSE #1820672032:c=0,e=43,dep=2,type=1,tim=1324569863594167
Next my trigger gets in action, sequences are generated, CERTIFICATES table is populated and then USER_FILES, but only the FILE_ID and LAST_UPDATE_DATE.
Finally update is fired against my view (V_CERT_FILES), reading data from wwv_flow_files it populates BLOB_CONTENT, MIMETYPE and FILENAME fields at the specific rowid in V_CERT_FILES, the one returned from the insert at the beginning. Last, file is deleted from wwv_flow_files.
I'm using sequences for the primary keys, this is only the body of the INSTEAD OF trigger:
select user_files_seq.nextval into l_file_id from dual;
select certificates_seq.nextval into l_cert_id from dual;
insert into user_files (file_id, filename, blob_content, mimetype, last_update_date) values (l_file_id, :n.filename, :n.blob_content, :n.mimetype, sysdate);
insert into certificates (cert_id, cert_owner, cert_vendor, cert_name, cert_file) values (l_cert_id, :n.cert_owner, :n.cert_vendor, :n.cert_name, l_file_id);
I'm surprised that I wasn't able to find a valuable source of information regarding this problem, only MOS note about running SQLoader against view with CLOB column and INSTEAD OF trigger. The solution would be to ran it against base table, MOS ID 795956.1.
Maybe I'm missing something and that's why I decided to share my problem here. So my question is how do you create this kind of architecture, insert into two tables with a relation between them in APEX ? I read a lot in the Internet, some advices were for creating custom form with APEX API, create a custom ARP, create two ARP or create a PL/SQL procedure for handing the DML?
Thanks in advance.
Regards,
SveThank you however I was wondering if there was an example available which uses EJB and persistence.
-
Can I create a view based on two tables that have the same column name?
I have two tables A and B. Each table has 50+ columns.
I want to create a view that includes all the columns in A and all the columns in B. I created a view with a select statement that says
Select A.*, B.*
From A, B
where A.id = B.id
It returns an error because in each table I have a column that keeps track if a record has been changed called Modified_By. That's where it chokes up on I figure. I would like to write the view without explicitly writing each column name from A and B as part of the select statement. The actual select statement works fine and only bombs when trying to turn the select statement into a view.You will have to type the full column list at least once. You can save a few keystrokes (i.e. alias. on every column) by providing the column names to the CREATE part instead of in the SELECT part. Something like:
SQL> desc t
Name Null? Type
ID NUMBER
NAME VARCHAR2(10)
SQL> desc t1
Name Null? Type
T_ID NUMBER
LOC_ID NUMBER
NAME VARCHAR2(15)
SQL> CREATE VIEW t_v (id, t_name, t_id, loc_id, t1_name) AS
2 SELECT t.*, t1.*
3 FROM t, t1
4 WHERE t.id = t1.t_id;
View created.HTH
John -
Can we create a BAM data Object from two tables
Hi ,
I want to pull the data from two tables and create a BAM data object, Is it possible in BAM?
Do the needful
Regards,
FrancisThe sample way is using AQ on database. You can create a database view to join the tables. And create AQ on the view, create a ems to listen on the queue.
-
Can't insert schema-based xmltype into binary xmltype table
I'm having issues trying to use binary storage along with the ALLOW ANYSCHEMA clause. I can't use the XMLSchema-instance mechanism for creating my schema-based XMLType instances, so I'm using CreateSchemaBasedXml. When I try to insert the XMLType into the table, however, it seems to think it's not schema-based and throws an error. I trimmed down my schema for the purposes of this example. Here's the schema (schematest.xsd):
<?xml version="1.0" encoding="Windows-1252"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="FORMINFO">
<xs:complexType>
<xs:sequence>
<xs:element name="SUBJECT">
<xs:complexType>
<xs:sequence>
<xs:element name="ADDR">
<xs:complexType>
<xs:sequence>
<xs:element name="STREET" type="xs:string" />
<xs:element name="CITY" type="xs:string" />
<xs:element name="STATEPROV" type="xs:string" />
<xs:element name="ZIP" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>Here's the instance file (schema testinst.xml):
<?xml version="1.0" encoding="utf-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>I registered the schema and created the test table:
BEGIN
DBMS_XMLSCHEMA.registerschema(
schemaurl => 'http://localhost/schematest.xsd',
schemadoc => bfilename('XMLDIR','schematest.xsd'),
gentables => false,
gentypes => false,
csid => nls_charset_id('AL32UTF8'),
options => DBMS_XMLSCHEMA.REGISTER_BINARYXML);
END;
CREATE TABLE BINARYTEST OF XMLType
XMLTYPE STORE AS BINARY XML
ALLOW ANYSCHEMA;But trying to insert gives me an ORA-44422 error (this is on Oracle 11.1.0.7.0 Enterprise):
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(bfilename('XMLDIR', 'schematestinst.xml'), nls_charset_id('AL32UTF8'));
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
declare
ERROR at line 1:
ORA-44422: nonschema XML disallowed for this column
ORA-06512: at line 10You can see from my put_line statement that the XMLType object is reporting its schema URL correctly and thinks it's been validated. Changing the table to "ALLOW NONSCHEMA" allows the insert, but it inserts it as a non-schema-based document. Am I skipping a step here?
Thanks,
JimIt might be a bug, but I am not yet sure...
See the following examples...
c:\>C:\oracle\product\11.1.0\db_1\bin\sqlplus.exe /nolog
SQL*Plus: Release 11.1.0.7.0 - Production on Mon Mar 23 22:14:41 2009
Copyright (c) 1982, 2008, Oracle. All rights reserved.
SQL> drop user otn cascade;
User dropped.
SQL> create user otn identified by otn;
User created.
SQL> grant xdbadmin, dba to otn;
Grant succeeded.
SQL> conn otn/otn
connected.
SQL> var schemaPath varchar2(256)
SQL> var schemaURL varchar2(256)
SQL>
SQL> begin
2 :schemaURL := 'http://localhost/schematest.xsd';
3 :schemaPath := '/public/schematest.xsd';
4 end;
5 /
PL/SQL procedure successfully completed.
SQL>
SQL> declare
2 res boolean;
3 xmlSchema xmlType := xmlType('<?xml version="1.0" encoding="Windows-1252"?>
4 <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
5 <xs:element name="FORMINFO">
6 <xs:complexType>
7 <xs:sequence>
8 <xs:element name="SUBJECT">
9 <xs:complexType>
10 <xs:sequence>
11 <xs:element name="ADDR">
12 <xs:complexType>
13 <xs:sequence>
14 <xs:element name="STREET" type="xs:string" />
15 <xs:element name="CITY" type="xs:string" />
16 <xs:element name="STATEPROV" type="xs:string" />
17 <xs:element name="ZIP" type="xs:string" />
18 </xs:sequence>
19 </xs:complexType>
20 </xs:element>
21 </xs:sequence>
22 </xs:complexType>
23 </xs:element>
24 </xs:sequence>
25 </xs:complexType>
26 </xs:element>
27 </xs:schema>');
28 begin
29 if (dbms_xdb.existsResource(:schemaPath)) then
30 dbms_xdb.deleteResource(:schemaPath);
31 end if;
32 res := dbms_xdb.createResource(:schemaPath,xmlSchema);
33 end;
34 /
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL> call dbms_xmlschema.deleteSchema(:schemaURL,4);
Call completed.
SQL> BEGIN
2 DBMS_XMLSCHEMA.registerSchema(
3 SCHEMAURL => :SchemaURL,
4 SCHEMADOC => xdbURIType(:SchemaPath).getClob(),
5 LOCAL => FALSE, -- local
6 GENTYPES => FALSE, -- generate object types
7 GENBEAN => FALSE, -- no java beans
8 GENTABLES => FALSE, -- generate object tables
9 OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML,
10 OWNER => USER
11 );
12 END;
13 /
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL> var schemaDoc varchar2(256)
SQL>
SQL> begin
2 :schemaDoc := '/public/schematest.xml';
3 end;
4 /
PL/SQL procedure successfully completed.
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> -- Create an XML Document in the repository
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> declare
2 res boolean;
3 xmlDoc xmlType := xmlType('<?xml version="1.0" encoding="utf-8"?>
4 <FORMINFO>
5 <SUBJECT>
6 <ADDR>
7 <STREET>123 Main St</STREET>
8 <CITY>Las Vegas</CITY>
9 <STATEPROV>NV</STATEPROV>
10 <ZIP>12345</ZIP>
11 </ADDR>
12 </SUBJECT>
13 </FORMINFO>');
14 begin
15 if (dbms_xdb.existsResource(:schemaDoc)) then
16 dbms_xdb.deleteResource(:schemaDoc);
17 end if;
18 res := dbms_xdb.createResource(:schemaDoc,xmlDoc);
19 end;
20 /
PL/SQL procedure successfully completed.
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> -- Ready to test
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> select * from tab;
no rows selected
SQL> CREATE TABLE BINARYTEST OF XMLType
2 XMLTYPE STORE AS BINARY XML
3 ALLOW ANYSCHEMA;
Table created.
SQL> set long 100000
SQL> select dbms_metadata.get_ddl('TABLE','BINARYTEST',user) from dual;
DBMS_METADATA.GET_DDL('TABLE','BINARYTEST',USER)
CREATE TABLE "OTN"."BINARYTEST" OF "SYS"."XMLTYPE"
OIDINDEX ( PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS" )
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS"
XMLTYPE COLUMN OBJECT_VALUE STORE AS BASICFILE BINARY XML (
TABLESPACE "USERS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT))
DISALLOW NONSCHEMA
ALLOW ANYSCHEMA
1 row selected.
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
declare
ERROR at line 1:
ORA-44422: nonschema XML disallowed for this column
ORA-06512: at line 10
-- ORA-44421: cannot DISALLOW NONSCHEMA without a SCHEMA clause
-- Cause: If no SCHEMA clause (explicit schema or ANYSCHEMA) was specified, nonschema data cannot be disallowed.-
-- Action: Remove DISALLOW NONSCHEMA or add some SCHEMA clause.
SQL> drop table binarytest;
Table dropped.
SQL> CREATE TABLE BINARYTEST OF XMLType
2 XMLTYPE STORE AS BINARY XML
3 ALLOW NONSCHEMA;
Table created.
SQL> select dbms_metadata.get_ddl('TABLE','BINARYTEST',user) from dual;
DBMS_METADATA.GET_DDL('TABLE','BINARYTEST',USER)
CREATE TABLE "OTN"."BINARYTEST" OF "SYS"."XMLTYPE"
OIDINDEX ( PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS" )
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS"
XMLTYPE COLUMN OBJECT_VALUE STORE AS BASICFILE BINARY XML (
TABLESPACE "USERS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT))
ALLOW NONSCHEMA
DISALLOW ANYSCHEMA
1 row selected.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> select * from binarytest;
SYS_NC_ROWINFO$
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
1 row selected.
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
15
16 INSERT INTO BINARYTEST
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> create table ORtest of xmltype
2 xmlschema "http://localhost/schematest.xsd" element "FORMINFO"
3 ;
Table created.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO ORTEST
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO BIN_ONE_SCHEMA
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> ----------------------------------------------------------
SQL>
SQL> -- Create an XML Document in the repository
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> declare
2 res boolean;
3 xmlDoc xmlType := xmlType('<?xml version="1.0" encoding="utf-8"?>
4 <FORMINFO>
5 <SUBJECT>
6 <ADDR>
7 <STREET>123 Main St</STREET>
8 <CITY>Las Vegas</CITY>
9 <STATEPROV>NV</STATEPROV>
10 <ZIP>12345</ZIP>
11 <ONE_TO_MANY>say what?</ONE_TO_MANY>
12 </ADDR>
13 </SUBJECT>
14 </FORMINFO>');
15 begin
16 if (dbms_xdb.existsResource(:schemaDoc)) then
17 dbms_xdb.deleteResource(:schemaDoc);
18 end if;
19 res := dbms_xdb.createResource(:schemaDoc,xmlDoc);
20 end;
21 /
PL/SQL procedure successfully completed.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO BIN_ONE_SCHEMA
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
<ONE_TO_MANY>say what?</ONE_TO_MANY>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
<ONE_TO_MANY>say what?</ONE_TO_MANY>
</ADDR>
</SUBJECT>
</FORMINFO>
declare
ERROR at line 1:
ORA-31154: invalid XML document
ORA-19202: Error occurred in XML processing
LSX-00213: only 0 occurrences of particle "ADDR", minimum is 1
ORA-06512: at "SYS.XMLTYPE", line 354
ORA-06512: at line 13
SQL> -
How can I insert into a view cache???
I have a problem in JClient like that:
A form that have 3 JTable:
- Table1 get data from UserTable in DB
- Table2 get data from GroupTable in DB
- Table3 get data from GroupTable in DB
and 2 buttons: btnAdd, btnRemove.
When I select a row in Table1, Table2 will get all records in GroupTable that row in Table1 belonging to and Table3 will get all records in GroupTable that row in Table1 not belonging to.
I want that when I select some rows in Table3 and click btnAdd then those rows in Table3 will be insert into Table2 and remove those rows from Table3. And when I select some rows in Table2 and click btnRemove then those rows in Table2 will be insert into Table3 and remove those rows from Table2.
Can you show me how to show that problem.
Thanks.Hi,
When do you get this error? Is it while running or while creating the form.
Here is a sample code which inserts a non-database column dummy into a table called dummy. This is done in successful procedure.
declare
l_dummy varchar2(1000);
begin
l_dummy := p_session.get_value_as_varchar2(p_block_name=>'DEFAULT',
p_attribute_name=>'A_DUMMY');
insert into sjayaram903_1g.dummy values(l_dummy);commit;
end;
Please check in your case if the size of the local variable is enough to hold the values being returned.
Thanks,
Sharmila -
How can I insert, modify and delete entries on my table control?
Hi,
I already have build a table control. Now I want to make manipulations on it. Therefore I have created 3 buttons, insert, modify and delete. But how can I get actions on table control.
This is my code for the internal table:
BEGIN OF its OCCURS 0,
mark TYPE C VALUE ' ',
artikel_nr TYPE ZARTIKEL-ARTIKEL_NR,
artikel_typ TYPE ZARTIKEL-TYPE,
bezeichnung TYPE ZARTIKEL-BEZEICHNUNG,
preis TYPE ZARTIKEL-PREIS,
mwst TYPE ZARTIKEL-MWST,
END OF its.
and this is the code which i wanted to delete a row in my table control:
WHEN 'DELETE'.
LOOP AT its WHERE mark EQ 'X'.
DELETE its WHERE mark = 'X'.
MOVE its TO ZARTIKEL.
ENDLOOP.
ENDCASE.
ENDMODULE:
and my PBO and PAI:
PROCESS BEFORE OUTPUT.
LOOP AT its INTO ZARTIKEL WITH CONTROL ARTIKEL.
ENDLOOP.
PROCESS AFTER INPUT.
MODULE EXIT.
LOOP AT its.
MODULE V1.
ENDLOOP.
MODULE user_command_1060.
But if I now open my table control and mark the line that I wanted to delete, nothing happens, not on my internal table and the data even not deleted on my table ZARTIKEL. Have you an idea what I did wrong??Hi,
In the attributes of table control take the SELCOL as wa_zekpo-flag
And in the internal table and work area add a field as flag(1) TYPE c
Refer:
At screen logic:-
PROCESS BEFORE OUTPUT.
MODULE status_8002.
LOOP WITH CONTROL po_tab.
MODULE pass_data.
ENDLOOP.
PROCESS AFTER INPUT.
MODULE user_command_8002.
LOOP WITH CONTROL po_tab.
MODULE modify_data.
ENDLOOP.
MODULE function.
In PBO,
MODULE status_8002 OUTPUT.
SET PF-STATUS 'ZTG_SELTB'.
DATA : line_count TYPE i.
DESCRIBE TABLE it_ekpo
LINES line_count.
po_tab-lines = line_count + 5.
ENDMODULE. " STATUS_8002 OUTPUT
*& Module PASS_DATA OUTPUT
MODULE pass_data OUTPUT.
READ TABLE it_ekpo into wa_ekpo INDEX po_tab-current_line.
ENDMODULE. " PASS_DATA OUTPUT
In PAI,
*& Module USER_COMMAND_8002 INPUT
MODULE USER_COMMAND_8002 INPUT.
OK_CODE = SY-UCOMM.
CASE OK_CODE.
WHEN 'BACK'.
LEAVE TO SCREEN 8001.
WHEN 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. " USER_COMMAND_8002 INPUT
*& Module MODIFY_DATA INPUT
MODULE DISPLAY_DATA INPUT.
MODIFY IT_EKPO INDEX PO_TAB-CURRENT_LINE FROM WA_EKPO.
ENDMODULE. " MODIFY_DATA INPUT
*& Module FUNCTION INPUT
MODULE FUNCTION INPUT.
OK_CODE = SY-UCOMM.
CASE OK_CODE.
WHEN 'SELECT'. "<--select all records
LOOP AT IT_EKPO INTO WA_EKPO.
WA_EKPO-FLAG = 'X'.
MODIFY IT_EKPO FROM WA_EKPO.
ENDLOOP.
WHEN 'DESEL'. "<--deselect all records
LOOP AT IT_EKPO INTO WA_EKPO.
WA_EKPO-FLAG = ' '.
MODIFY IT_EKPO FROM WA_EKPO.
ENDLOOP.
WHEN 'DELETE'.
DELETE FROM it_ekpo WHERE flag = 'X'.
ENDCASE.
ENDMODULE. " FUNCTION INPUT
Regards,
Tarun -
Dreamweaver: can i insert a background image in a layout table?
i'm using a layout table and i can't figure out how to put a
non-repeating image into the background of my layout table. is this
possible? i need to center it too.Before anything else, I would say DON'T USE LAYOUT MODE.
In my opinion, there are three serious problems with Layout
Mode -
1. Perhaps most importantly, it sits between you and *real*
HTML tables,
and fools you into believing that concepts like "layout cell"
and
"autostretch" really mean something. They do not. As long as
you use
Layout Mode, you'll never learn one of the most important
things for new web
developers - how to build solid and reliable tables.
2. Actually, #1 wouldn't be *so* bad, except that the code
that is written
by Layout Mode is really poor code. For example, a layout
table contains
MANY empty rows of cells. This can contribute to a table's
instability.
In addition, if your initial positioning of the table's cells
is a bit
complex,
Layout Mode will throw in col- and rowspans aplenty as it
merges and splits
cells willy-nillly to achieve the pixel-perfect layout you
have specified.
Again,
this is an extremely poor method for building stable tables,
because it
allows
changes in one tiny cell's shape (i.e, dimensions) to ripple
through the
rest
of the table, usually with unexpected and sometimes
disastrous consequences.
This is one of the primary reasons for the final result's
fragility - read
this -
http://apptools.com/rants/spans.php
3. The UI for Layout Mode is beyond confusing - many options
that you might
want to use are inaccessible, e.g., inserting another table,
or layer onto
the page.
I can understand the new user's desire to use this tool to
make their life
easier,
but the cost is just too heavy in my opinion.
To make good tables, keep it simple. Put a table on the page,
and begin to
load your content. If you would want a different table
layout, instead of
merging or splitting cells, consider stacking tables or
nesting simple
tables instead, respectively.
And above all, do not try to build the whole page with a
single table!
Luckily, Adobe understands the problems created for the
unsuspecting user
who falls into this trap, and has elected to remove this
feature altogether
from the next version of DW. The time is right for you to
begin working
with tables properly!
To read more about this approach, visit the DW FAQ link in my
sig, and run
through the table tutorials.
Adobe agrees with this analysis - Layout mode is being
removed from the next
version of DW.
Murray --- ICQ 71997575
Adobe Community Expert
(If you *MUST* email me, don't LAUGH when you do so!)
==================
http://www.projectseven.com/go
- DW FAQs, Tutorials & Resources
http://www.dwfaq.com - DW FAQs,
Tutorials & Resources
==================
"dfgsdrsdr" <[email protected]> wrote in
message
news:[email protected]...
> i'm using a layout table and i can't figure out how to
put a non-repeating
> image into the background of my layout table. is this
possible? i need to
> center it too. -
How can I Insert a Text field in a DATABASE TABLE???
Hello at all,
i have a database Table ZTEST with 2 columns.
MANDT TYPE CLNT
TEXT TYPE char (255)
In my internal table tab, i have a text content. I want insert this content in my database table ZTEST.
DATA: tab TYPE TABLE OF ZTEST,
lin TYPE ZTEST.
lin-text = 'HELLO WORLD'
APPEND lin TO tab.
INSERT INTO ZTEST VALUES tab.
Commit Work.
Is this correct???? BECAUSE it doesnt work.
Edited by: ETN_58 on Mar 31, 2010 10:27 AMHi All,
Here table ZTEST has two fields kunnr and text where kunnr is the key field.
REPORT ZATEST .
tables ztest.
DATA: itab TYPE TABLE OF ZTEST with header line.
itab-kunnr = '67890'.
itab-text = 'HELLO WORLD'.
APPEND itab.
if sy-subrc eq 0.
INSERT ZTEST from table itab.
Commit Work.
endif.
Check with this, its working fine.
Regards,
Md Ziauddin. -
Insert row and delete row in a table control
Hi Experts,
I am using a table control in module pool programming, How can I Insert row and delete row in a table control?
Thanks in Advance....Santhosh,
Iam using this code..
FORM fcode_delete_row
USING p_tc_name TYPE dynfnam
p_table_name
p_mark_name .
-BEGIN OF LOCAL DATA----
DATA l_table_name LIKE feld-name.
data: p_mark_name type c.
FIELD-SYMBOLS <tc> TYPE cxtab_control.
FIELD-SYMBOLS <table> TYPE STANDARD TABLE.
FIELD-SYMBOLS <wa>.
FIELD-SYMBOLS <mark_field>.
-END OF LOCAL DATA----
ASSIGN (p_tc_name) TO <tc>.
get the table, which belongs to the tc *
CONCATENATE p_table_name '[]' INTO l_table_name. "table body
ASSIGN (l_table_name) TO <table>. "not headerline
delete marked lines *
DESCRIBE TABLE <table> LINES <tc>-lines.
LOOP AT <table> ASSIGNING <wa>.
access to the component 'FLAG' of the table header *
ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
if <MARK_FIELD> = 'X'.
PERFORM f_save_confirmation_9101.
IF gv_answer EQ '1'.
DELETE <table> INDEX syst-tabix.
IF sy-subrc = 0.
<tc>-lines = <tc>-lines - 1.
ENDIF.
ELSE.
ENDIF.
ENDIF.
ENDLOOP.
in this code ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
if <MARK_FIELD> = 'X'.
this code is not working... -
Inserting a new row in a child table referencing an already existing parent
I have two tables PARENT & CHILD (one to many), both of which are populated at different times.
In our toplink mappings, parent contains a collection of child Domain Objects, & and child Domain object contains a one - one to parent.
How can I insert a new row in a child table with reference to an already existing row in parent?
When I fetch the parent Domain object and try to set it in the child Domain Object and use the unitOfWork.registerObject() it goes into a circular loop of selecting from 2 other tables.
Please suggest.Odd, have you disabled caching and indirection? (NoIdentityMap, dontUseIndirection, or alwaysRefresh/disableCacheHits). If so, then this could be the issue.
Otherwise please include the sample code you use to perform this, and verify that you do not have any unusual code in your set/get methods or in descriptor events. Also turn TopLink logging on and include a sample. Also ensure that you do not modify your objects until after registering them in the unit of work, and only modify the unit of work clones. -
How to insert the data if the data in the two tables doesn't match.
Hi,
I have requirement like,I have to insert the data by comparing the two tables based on the date field.If they both are equal then the data shouldn't be inserted if not the data has to be inserted.
Can some one help me on this ASAP.
Regards,
Sudha
sudhaHi,
Thanks for the reply,i would like to know the way that we can design the packages
sudha
You have multiple ways of implementing this
1. Using Lookup Task
http://www.sqlis.com/sqlis/post/Get-all-from-Table-A-that-isnt-in-Table-B.aspx
2. using SCD wizard
http://www.bimonkey.com/2009/07/the-slowly-changing-dimension-transformation-part-1/
3. using hashing
http://visakhm.blogspot.in/2014/06/ssis-tips-implementing-scd.html
Please Mark This As Answer if it solved your issue
Please Mark This As Helpful if it helps to solve your issue
Visakh
My MSDN Page
My Personal Blog
My Facebook Page -
Insert records from report program into R3 table
Hi
I wanted to insert records from report program into R3 table.
here is my code
data : itab type standard table of zemp initial size 10 with header line.
itab-EMPNO = '012'.
itab-ENAME = 'XXXX'.
itab-JOB = 'XXXX'.
APPEND itab.
insert ztable from table itab.
but i am getting the following error
the type of the data base table and work area/internal table "ITAB" are no unicode-converible.
how can I insert records from report program into R3 table
should I have to write move corresponding
pls guide
thanks
manianHi,
itab-EMPNO = '012'.
itab-ENAME = 'XXXX'.
itab-JOB = 'XXXX'.
APPEND itab.
insert ztable from table itab.
Do one thing
Data : itab type table of ztable with header line.
itab-EMPNO = '012'.
itab-ENAME = 'XXXX'.
itab-JOB = 'XXXX'.
APPEND itab.
insert ztable from table itab.
error will resolve, then try to make structure similar to ZTABLE
Maybe you are looking for
-
I am looking for the installation package "AcroPro.msi". I had previously installed Acrobat Pro XI, but it seems to have disappeared, although the computer says it's installed. Where do I find this installation package? I use Acrobat Pro to save do
-
Hey Apple, the problem isn't us and isn't going away - QT audio ok but
QT audio ok but QT video just not showing up Hey Apple, look into this as too many posts on too many forums here verifying that the QT movies work with 3rd party browsers but even the latest Safari beta browser is only delivering audio. ok, so maybe
-
How to make other people image more beautiful
how to make other people image more beautiful?
-
Why can't I update latest version of apps. Always request applied. Although I sign in using correct password. But everytime prompted with incorrect password , retrieve password
-
HP photosmart c4599 prints tiny images
When I use the default print dialog that pops up with printing, images that print come out very tiny. I have changed as many settings as I can find and still unable to fix the issue. Help?