0% found this document useful (0 votes)
42 views19 pages

Nokku

Uploaded by

Sakthi PS21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views19 pages

Nokku

Uploaded by

Sakthi PS21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

CREATE TABLE EMPLOYEE

ENO INT PRIMARY KEY,

EMPDATA XMLTYPE

);

INSERT INTO EMPLOYEE VALUES

14732,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BSIC><GENDER>M</GENDER><DCODE>101<
/DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

);

SELECT ENO,E.EMPDATA.extract('/EMP/NAME/text()').getStringVal() from EMPLOYEE E;

SELECT ENO,7-StringVal() "ORANGE" from EMPLOYEE E;

UPDATE EMPLOYEE SET EMPDATA = UPDATEXML(EMPDATA,'/EMP/BASIC/text()', 10000) WHERE ENO


= 14728;

AGGREGATE FUNCTIONS

SELECT AVG(EXTRACTVALUE(EMPDATA, '/EMPLOYEE/BASIC')) AS ORANGE FROM EMPLOYEE;

ADD COLUMNS TO EMPLOYEE

ALTER TABLE EMPLOYEE ADD MNUMBER NUMBER;

POSTGRES

CREATE TABLE EMPLOYEE

ENO INT PRIMARY KEY,

EMPDATA XML
);

INSERT INTO EMPLOYEE VALUES

14732,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101
</DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

);

UPDATE employee SET empdata = XMLPARSE(CONTENT REPLACE(XMLSERIALIZE(CONTENT empdata


AS TEXT),'<basic>50000</basic>','<basic>55000</basic>')) WHERE eno = 14732;

INSERT INTO EMPLOYEE VALUES

14733,
'<EMPLOYEE><NAME>MARY</NAME><BASIC>32000</BASIC><GENDER>F</GENDER><DCODE>101<
/DCODE><DOB>26-MAR-1996</DOB></EMPLOYEE>'

);

INSERT INTO EMPLOYEE VALUES

14734,
'<EMPLOYEE><NAME>JAMES</NAME><BASIC>46000</BASIC><GENDER>M</GENDER><DCODE>102
</DCODE><DOB>27-MAR-1996</DOB></EMPLOYEE>'

);

INSERT INTO EMPLOYEE VALUES

14735,
'<EMPLOYEE><NAME>CLEO</NAME><BASIC>39000</BASIC><GENDER>M</GENDER><DCODE>102<
/DCODE><DOB>25-MAR-1996</DOB></EMPLOYEE>'

);

INSERT INTO EMPLOYEE VALUES

14736,
'<EMPLOYEE><NAME>AIDEN</NAME><BASIC>32000</BASIC><GENDER>M</GENDER><DOB>29-
MAR-1996</DOB></EMPLOYEE>'
);

INSERT INTO EMPLOYEE VALUES

14737,
'<EMPLOYEE><NAME>FIN</NAME><BASIC>45000</BASIC><GENDER>M</GENDER><DOB>28-MAR-
1996</DOB></EMPLOYEE>'

);

SELECT XPATH('/EMPLOYEE/text()', EMPDATA) FROM EMPLOYEE;

SELECT COUNT(XPATH('/EMPLOYEE/text()', EMPDATA)) FROM EMPLOYEE;

SELECT SUM((XPATH('/EMPLOYEE/BASIC/text()', EMPDATA))[1]::TEXT::INTEGER) FROM EMPLOYEE;

SELECT COUNT((XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]) FROM EMPLOYEE;

SELECT

ENO,

(XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]::TEXT::INTEGER AS DCODE

FROM EMPLOYEE

GROUP BY (DCODE,ENO)

ORDER BY ENO;

SELECT

(XPATH('/EMPLOYEE/NAME/text()', EMPDATA))[1] AS NAME,

(XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]::TEXT::INTEGER AS DCODE

FROM EMPLOYEE;

SELECT

(XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]::TEXT::INTEGER AS DCODE,

COUNT(ENO)

FROM EMPLOYEE
GROUP BY (DCODE);

SELECT

(XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]::TEXT::INTEGER AS DCODE,

COUNT(ENO)

FROM EMPLOYEE

WHERE ((XPATH('/EMPLOYEE/DCODE/text()', EMPDATA))[1]::TEXT::INTEGER) IS NOT NULL

GROUP BY (DCODE);

--------------------------------------------------------------------------------------------------------------------------------------
-----------------

CREATE TABLE EMPLOYEE

ENO INT PRIMARY KEY,

EMPDATA XMLTYPE

);

INSERT INTO EMPLOYEE VALUES

14732,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101
</DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

);

SELECT ENO,E.EMPDATA.extract('/EMP/NAME/text()').getStringVal() from EMPLOYEE E;

SELECT ENO,E.EMPDATA.extract('/EMP/NAME/text()').getStringVal() "ORANGE" from EMPLOYEE E;

UPDATE EMPLOYEE SET EMPDATA = UPDATEXML(EMPDATA,'/EMP/BASIC/text()', 10000) WHERE ENO


= 14728;
AGGREGATE FUNCTIONS

SELECT AVG(EXTRACTVALUE(EMPDATA, '/EMPLOYEE/BASIC')) AS ORANGE FROM EMPLOYEE;

ADD COLUMNS TO EMPLOYEE

ALTER TABLE EMPLOYEE ADD MNUMBER NUMBER;

POSTGRES

CREATE TABLE EMPLOYEE

ENO INT PRIMARY KEY,

EMPDATA XML

);

INSERT INTO EMPLOYEE VALUES

14732,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101
</DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

);

UPDATE employee SET empdata = XMLPARSE(CONTENT REPLACE(XMLSERIALIZE(CONTENT empdata


AS TEXT),'<basic>50000</basic>','<basic>55000</basic>')) WHERE eno = 14732;

...................................................................................

SQL*Plus: Release 11.2.0.1.0 Production on Sat May 18 15:59:09 2024

Copyright (c) 1982, 2010, Oracle. All rights reserved.

Enter user-name: JADON

Enter password:
Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> CREATE USER XML IDENTIFIED BY XML;

User created.

SQL> GRANT DBA TO XML;

Grant succeeded.

SQL> CONN XML

Enter password:

Connected.

SQL> CREATE TABLE EMPLOYEE

2 (

3 ENO NUMBER(5) PRIMARY KEY,

4 EMPDATA XMLTYPE

5 );

Table created.

SQL> DESC EMPLOYEE

Name Null? Type

----------------------------------------- -------- ----------------------------

ENO NOT NULL NUMBER(5)

EMPDATA PUBLIC.XMLTYPE

SQL> INSERT INTO EMPLOYEE VALUES


2 (

3 14728,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></
EMPLOYEE>'

4 );

1 row created.

SQL> SELECT * FROM EMPLOYEE;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------

14728

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></EMPLOYEE>

SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14728,
'<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</BASIC><GENDER
>M</GENDER></EMPLOYEE>'

4 );

INSERT INTO EMPLOYEE VALUES

ERROR at line 1:

ORA-00001: unique constraint (XML.SYS_C0010837) violated

SQL>

SQL> INSERT INTO EMPLOYEE VALUES


2 (

3 14729,
'<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</BASIC><GENDER
>M</GENDER></EMPLOYEE>'

4 );

1 row created.

SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14730,
'<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</DOB><BASIC>5
0000</BASIC><GENDER>M</GENDER></EMPLOYEE>'

4 );

1 row created.

SQL> SELECT * FROM EMPLOYEE;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------

14728

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></EMPLOYEE>

14729

<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</
BASIC><GENDER>M<

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000
SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14731,
'<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101
</DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

4 );

1 row created.

SQL> SELECT * FROM EMPLOYEE;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------

14728

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></EMPLOYEE>

14729

<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</
BASIC><GENDER>M<

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000

ENO

----------

EMPDATA
--------------------------------------------------------------------------------

14731

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</
GENDER><DCODE>101</DC

SQL> SET LINES 140

SQL> L

1* SELECT * FROM EMPLOYEE

SQL> /

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></EMPLOYEE>

14729

<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</
BASIC><GENDER>M<

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------
14731

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</
GENDER><DCODE>101</DC

SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14732,
'<EMPLOYEE>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101</
DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

4 );

INSERT INTO EMPLOYEE VALUES

ERROR at line 1:

ORA-31011: XML parsing failed

ORA-19202: Error occurred in XML processing

LPX-00225: end-element tag "NAME" does not match start-element tag "EMPLOYEE"

Error at line 1

SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14732,
'<EMPLOYEE><name>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101<
/DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

4 );

INSERT INTO EMPLOYEE VALUES

ERROR at line 1:

ORA-31011: XML parsing failed

ORA-19202: Error occurred in XML processing

LPX-00225: end-element tag "NAME" does not match start-element tag "name"

Error at line 1
SQL> INSERT INTO EMPLOYEE VALUES

2 (

3 14732, '<EMPLOYEE>PETER<BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101</
DCODE><DOB>24-MAR-1996</DOB></EMPLOYEE>'

4 );

1 row created.

SQL> SELECT * FROM EMPLOYEE;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</GENDER></EMPLOYEE>

14729

<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</
BASIC><GENDER>M<

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000

ENO

----------

EMPDATA
--------------------------------------------------------------------------------------------------------------------------------------
------

14731

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</
GENDER><DCODE>101</DC

14732

<EMPLOYEE>PETER<BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101</
DCODE><DOB>24-M

SQL> UPDATE EMPLOYEE SET <BASIC>1000</BASIC> WHERE ENO=14728;

UPDATE EMPLOYEE SET <BASIC>1000</BASIC> WHERE ENO=14728

ERROR at line 1:

ORA-01747: invalid user.table.column, table.column, or column specification

SQL> UPDATE EMPLOYEE SET EMPLOYEE.BASIC=1000 WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPLOYEE.BASIC=1000 WHERE ENO=14728

ERROR at line 1:

ORA-00904: "EMPLOYEE"."BASIC": invalid identifier

SQL> UPDATE EMPLOYEE SET EMPDATA.BASIC=1000 WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPDATA.BASIC=1000 WHERE ENO=14728

ERROR at line 1:

ORA-00904: "EMPDATA"."BASIC": invalid identifier


SQL> UPDATE EMPLOYEE SET EMPDATA.EMPLOYEE.BASIC=1000 WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPDATA.EMPLOYEE.BASIC=1000 WHERE ENO=14728

ERROR at line 1:

ORA-00904: "EMPDATA"."EMPLOYEE"."BASIC": invalid identifier

SQL> UPDATE EMPLOYEE SET EMPDATA<BASIC>1000</BASIC> WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPDATA<BASIC>1000</BASIC> WHERE ENO=14728

ERROR at line 1:

ORA-00927: missing equal sign

SQL> UPDATE EMPLOYEE SET EMPDATA<BASIC>=1000 WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPDATA<BASIC>=1000 WHERE ENO=14728

ERROR at line 1:

ORA-00927: missing equal sign

SQL> UPDATE EMPLOYEE SET EMPDATA=<BASIC>1000</BASIC> WHERE ENO=14728;

UPDATE EMPLOYEE SET EMPDATA=<BASIC>1000</BASIC> WHERE ENO=14728

ERROR at line 1:

ORA-00936: missing expression

SQL> UPDATE EMPLOYEE SET EMPDATA='<BASIC>1000</BASIC>' WHERE ENO=14728;

1 row updated.
SQL> SELECT * FROM EMPLOYEE;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<BASIC>1000</BASIC>

14729

<EMPLOYEE><NAME>PETER</NAME><DOB>24-MAR-1996</DOB><BASIC>50000</
BASIC><GENDER>M<

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14731

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</
GENDER><DCODE>101</DC

14732

<EMPLOYEE>PETER<BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101</
DCODE><DOB>24-M
SQL> SELECT * FROM EMPLOYEE WHERE ENO=14728;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<BASIC>1000</BASIC>

SQL> UPDATE EMPLOYEE SET EMPDATA='<EMPLOYEE><BASIC>1000</BASIC></EMPLOYEE>' WHERE


ENO=14729;

1 row updated.

SQL> SELECT * FROM EMPLOYEE WHERE ENO=14728;

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<BASIC>1000</BASIC>

SQL> SELECT * FROM EMPLOYEE;

ENO

----------
EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14728

<BASIC>1000</BASIC>

14729

<EMPLOYEE><BASIC>1000</BASIC></EMPLOYEE>

14730

<EMPLOYEE><NAME>PETER</NAME><DCODE>101</DCODE><DOB>24-MAR-1996</
DOB><BASIC>50000

ENO

----------

EMPDATA

--------------------------------------------------------------------------------------------------------------------------------------
------

14731

<EMPLOYEE><NAME>PETER</NAME><BASIC>50000</BASIC><GENDER>M</
GENDER><DCODE>101</DC

14732

<EMPLOYEE>PETER<BASIC>50000</BASIC><GENDER>M</GENDER><DCODE>101</
DCODE><DOB>24-M

SQL> UPDATE EMPLOYEE SET EMPDATA=<EMPLOYEE><BASIC>10000</BASIC></EMPLOYEE> WHERE


ENO=14730;

UPDATE EMPLOYEE SET EMPDATA=<EMPLOYEE><BASIC>10000</BASIC></EMPLOYEE> WHERE


ENO=14730

*
ERROR at line 1:

ORA-00936: missing expression

SQL> UPDATE EMPLOYEE SET '<EMPLOYEE><BASIC>10000</BASIC></EMPLOYEE>' WHERE


ENO=14730;

UPDATE EMPLOYEE SET '<EMPLOYEE><BASIC>10000</BASIC></EMPLOYEE>' WHERE ENO=14730

ERROR at line 1:

ORA-01747: invalid user.table.column, table.column, or column specification

SQL> UPDATE EMPLOYEE SET EMPDATA.<BASIC>10000</BASIC> WHERE ENO=14730;

UPDATE EMPLOYEE SET EMPDATA.<BASIC>10000</BASIC> WHERE ENO=14730

ERROR at line 1:

ORA-01747: invalid user.table.column, table.column, or column specification

SQL> SELECT EMPDATA.NAME FROM EMPLOYEE;

SELECT EMPDATA.NAME FROM EMPLOYEE

ERROR at line 1:

ORA-00904: "EMPDATA"."NAME": invalid identifier

SQL> SELECT EMPLOYEE.NAME FROM EMPLOYEE;

SELECT EMPLOYEE.NAME FROM EMPLOYEE

ERROR at line 1:

ORA-00904: "EMPLOYEE"."NAME": invalid identifier


SQL> SELECT EMPDATA.EMPLOYEE.NAME FROM EMPLOYEE;

SELECT EMPDATA.EMPLOYEE.NAME FROM EMPLOYEE

ERROR at line 1:

ORA-00904: "EMPDATA"."EMPLOYEE"."NAME": invalid identifier

SQL> SELECT EMPDATA.<EMPLOYEE><NAME> FROM EMPLOYEE;

SELECT EMPDATA.<EMPLOYEE><NAME> FROM EMPLOYEE

ERROR at line 1:

ORA-01747: invalid user.table.column, table.column, or column specification

SQL> SELECT EMPDATA.<EMPLOYEE>.<NAME> FROM EMPLOYEE;

SELECT EMPDATA.<EMPLOYEE>.<NAME> FROM EMPLOYEE

ERROR at line 1:

ORA-01747: invalid user.table.column, table.column, or column specification

SQL>

You might also like