You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by Apache Wiki <wi...@apache.org> on 2014/06/11 00:43:46 UTC

[Db-derby Wiki] Trivial Update of "SQLvsDerbyFeatures" by DagWanvik

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Db-derby Wiki" for change notification.

The "SQLvsDerbyFeatures" page has been changed by DagWanvik:
https://wiki.apache.org/db-derby/SQLvsDerbyFeatures?action=diff&rev1=67&rev2=68

  = SQL-99 and SQL-2003 features mapped to Derby =
- 
  == Introduction ==
- 
- This document shows the features as defined in SQL-99 (''ANSI/ISO/IEC 9075-2-1999: for Information Technology – Database Languages – SQL – Part 2: Foundation (SQL/Foundation)'') and SQL-2003 (''ISO/IEC 9075-2: Information technology — Database languages — SQL — Part 2: Foundation (SQL/Foundation)'') and whether they are implemented in Derby. 
+ This document shows the features as defined in SQL-99 (''ANSI/ISO/IEC 9075-2-1999: for Information Technology – Database Languages – SQL – Part 2: Foundation (SQL/Foundation)'') and SQL-2003 (''ISO/IEC 9075-2: Information technology — Database languages — SQL — Part 2: Foundation (SQL/Foundation)'') and whether they are implemented in Derby.
  
  Legend:
  ||<#00FF00>Yes ||The feature is supported. ||
- ||<#FFFF00>Yes* ||The feature is supported (e.g. through JDBC) but not according to the SQL standard. See explanatory comment.||
+ ||<#FFFF00>Yes* ||The feature is supported (e.g. through JDBC) but not according to the SQL standard. See explanatory comment. ||
  ||<#FFFF00>Partial ||The feature is partially supported. ||
- ||<#FF0000>No ||The feature is '''not''' supported.||
+ ||<#FF0000>No ||The feature is '''not''' supported. ||
  ||N/A ||Does not apply. ||
  || ||Not yet documented on this page ('''You''' may contribute). ||
  
+ 
+ 
+ 
  == Map ==
- 
- ||||||||||~+'''''SQL-99 Core / SQL-2003 Mandatory'''''+~ ||
+ ||||||||||<style="text-align:center">~+'''''SQL-99 Core / SQL-2003 Mandatory'''''+~ ||
- ||'''Feature ID'''||'''Feature name'''||'''SQL-99 Core'''||'''SQL-2003 Mandatory'''||'''Note'''  ||
+ ||'''Feature ID''' ||'''Feature name''' ||'''SQL-99 Core''' ||'''SQL-2003 Mandatory''' ||'''Note''' ||
- ||'''E011'''||'''Numeric data types'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E011''' ||'''Numeric data types''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-01||INTEGER and SMALLINT data types (including all spellings)||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-01 ||INTEGER and SMALLINT data types (including all spellings) ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-02||REAL, DOUBLE PRECISON, and FLOAT data types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-02 ||REAL, DOUBLE PRECISON, and FLOAT data types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-03||DECIMAL and NUMERIC data types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-03 ||DECIMAL and NUMERIC data types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-04||Arithmetic operators||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-04 ||Arithmetic operators ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-05||Numeric comparison||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-05 ||Numeric comparison ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E011-06||Implicit casting among the numeric data types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E011-06 ||Implicit casting among the numeric data types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E021'''||'''Character data types'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E021''' ||'''Character data types''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-01||CHARACTER data type (including all its spellings)||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-01 ||CHARACTER data type (including all its spellings) ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-02||CHARACTER VARYING data type (including all its spellings)||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-02 ||CHARACTER VARYING data type (including all its spellings) ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-03||Character literals||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-03 ||Character literals ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-04||CHARACTER_LENGTH function||<#FFFF00>Yes*||<#FFFF00>Yes*||Called LENGTH. {fn LENGTH(...)} is according to JDBC specification.  ||
+ ||E021-04 ||CHARACTER_LENGTH function ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Called LENGTH. {fn LENGTH(...)} is according to JDBC specification. ||
- ||E021-05||OCTET_LENGTH function||<#FF0000>No||<#FF0000>No||   ||
+ ||E021-05 ||OCTET_LENGTH function ||<#FF0000>No ||<#FF0000>No || ||
- ||E021-06||SUBSTRING function||<#FFFF00>Yes*||<#FFFF00>Yes*||Called SUBSTR. xNo FROM...FOR, just commas. {fn SUBSTRING(....)} is according to JDBC specification.  ||
+ ||E021-06 ||SUBSTRING function ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Called SUBSTR. xNo FROM...FOR, just commas. {fn SUBSTRING(....)} is according to JDBC specification. ||
- ||E021-07||Character concatenation||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-07 ||Character concatenation ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-08||UPPER and LOWER functions||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-08 ||UPPER and LOWER functions ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-09||TRIM function||<#00FF00>Yes (10.3)||<#00FF00>Yes (10.3)|| Earlier versions (10.0 - 10.2): Simple LTRIM and RTRIM. {fn LTRIM(...)} and {fn RTRIM(...)} is according to JDBC specification.  ||
+ ||E021-09 ||TRIM function ||<#00FF00>Yes (10.3) ||<#00FF00>Yes (10.3) ||Earlier versions (10.0 - 10.2): Simple LTRIM and RTRIM. {fn LTRIM(...)} and {fn RTRIM(...)} is according to JDBC specification. ||
- ||E021-10||Implicit casting among the character data types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-10 ||Implicit casting among the character data types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E021-11||POSITION function||<#FFFF00>Yes*||<#FFFF00>Yes*||Called LOCATE. {fn LOCATE(...)} is according to JDBC specification.  ||
+ ||E021-11 ||POSITION function ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Called LOCATE. {fn LOCATE(...)} is according to JDBC specification. ||
- ||E021-12||Character comparison||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E021-12 ||Character comparison ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E031'''||'''Identifiers'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E031''' ||'''Identifiers''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E031-01||Delimited identifiers||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E031-01 ||Delimited identifiers ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E031-02||Lower case identifiers||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E031-02 ||Lower case identifiers ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E031-03||Trailing underscore||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E031-03 ||Trailing underscore ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E051'''||'''Basic query specification'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E051''' ||'''Basic query specification''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-01||SELECT DISTINCT||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-01 ||SELECT DISTINCT ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-02||GROUP BY clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-02 ||GROUP BY clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-04||GROUP BY can contain columns not in select-list||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-04 ||GROUP BY can contain columns not in select-list ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-05||Select list items can be renamed||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-05 ||Select list items can be renamed ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-06||HAVING clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-06 ||HAVING clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-07||Qualified * in select list||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-07 ||Qualified * in select list ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-08||Correlation names in the FROM clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-08 ||Correlation names in the FROM clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E051-09||Rename columns in the FROM clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E051-09 ||Rename columns in the FROM clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E061'''||'''Basic predicates and search conditions'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E061''' ||'''Basic predicates and search conditions''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-01||Comparison predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-01 ||Comparison predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-02||BETWEEN predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-02 ||BETWEEN predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-03||IN predicate with list of values||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-03 ||IN predicate with list of values ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-04||LIKE predicate||<#00FF00>Yes (10.3)||<#00FF00>Yes (10.3)|| In earlier versions (10-0 - 10.2): Direct column references in patterns was not supported.  [[http://issues.apache.org/jira/browse/DERBY-2147|Issue DERBY-2147]]||
+ ||E061-04 ||LIKE predicate ||<#00FF00>Yes (10.3) ||<#00FF00>Yes (10.3) ||In earlier versions (10-0 - 10.2): Direct column references in patterns was not supported.  [[http://issues.apache.org/jira/browse/DERBY-2147|Issue DERBY-2147]] ||
- ||E061-05||LIKE predicate: ESCAPE clause||<#00FF00>Yes (10.3)||<#00FF00>Yes (10.3)|| In earlier versions (10-0 - 10.2): Direct column references in escape clause was not supported.  [[http://issues.apache.org/jira/browse/DERBY-2147|Issue DERBY-2147]] ||
+ ||E061-05 ||LIKE predicate: ESCAPE clause ||<#00FF00>Yes (10.3) ||<#00FF00>Yes (10.3) ||In earlier versions (10-0 - 10.2): Direct column references in escape clause was not supported.  [[http://issues.apache.org/jira/browse/DERBY-2147|Issue DERBY-2147]] ||
- ||E061-06||NULL predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-06 ||NULL predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-07||Quantified comparison predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-07 ||Quantified comparison predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-08||EXISTS predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-08 ||EXISTS predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-09||Subqueries in comparison predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-09 ||Subqueries in comparison predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-11||Subqueries in IN predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-11 ||Subqueries in IN predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-12||Subqueries in quantified comparison predicate||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-12 ||Subqueries in quantified comparison predicate ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-13||Correlated subqueries||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-13 ||Correlated subqueries ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E061-14||Search condition||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E061-14 ||Search condition ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E071'''||'''Basic query expressions'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E071''' ||'''Basic query expressions''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E071-01||UNION DISTINCT table operator||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E071-01 ||UNION DISTINCT table operator ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E071-02||UNION ALL table operator||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E071-02 ||UNION ALL table operator ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E071-03||EXCEPT DISTINCT table operator||<#00FF00>Yes (10.1)||<#00FF00>Yes (10.1)||From 10.1  ||
+ ||E071-03 ||EXCEPT DISTINCT table operator ||<#00FF00>Yes (10.1) ||<#00FF00>Yes (10.1) ||From 10.1 ||
- ||E071-05||Columns combined via table operators need not have exactly the same data type||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E071-05 ||Columns combined via table operators need not have exactly the same data type ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E071-06||Table operators in subqueries||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E071-06 ||Table operators in subqueries ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E081'''||'''Basic Privileges'''||<#FFFF00>Partial (10.2)||<#FFFF00>Partial (10.2)||   ||
+ ||'''E081''' ||'''Basic Privileges''' ||<#FFFF00>Partial (10.2) ||<#FFFF00>Partial (10.2) || ||
- ||E081-01||SELECT privilege at the table level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-01 ||SELECT privilege at the table level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-02||DELETE privilege||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-02 ||DELETE privilege ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-03||INSERT privilege at the table level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-03 ||INSERT privilege at the table level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-04||UPDATE privilege at the table level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-04 ||UPDATE privilege at the table level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-05||UPDATE privilege at the column level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-05 ||UPDATE privilege at the column level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-06||REFERENCES privilege at the table level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-06 ||REFERENCES privilege at the table level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-07||REFERENCES privilege at the column level||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-07 ||REFERENCES privilege at the column level ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||E081-08||WITH GRANT OPTION||<#FF0000>No||<#FF0000>No||   ||
+ ||E081-08 ||WITH GRANT OPTION ||<#FF0000>No ||<#FF0000>No || ||
- ||E081-09||USAGE privilege||<#FF0000>No||<#FF0000>No||   ||
+ ||E081-09 ||USAGE privilege ||<#FF0000>No ||<#FF0000>No || ||
- ||E081-10||EXECUTE privilege||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||E081-10 ||EXECUTE privilege ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||'''E091'''||'''Set functions'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E091''' ||'''Set functions''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-01||AVG||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-01 ||AVG ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-02||COUNT||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-02 ||COUNT ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-03||MAX||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-03 ||MAX ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-04||MIN||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-04 ||MIN ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-05||SUM||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-05 ||SUM ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-06||ALL quantifier||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-06 ||ALL quantifier ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E091-07||DISTINCT qualifier||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E091-07 ||DISTINCT qualifier ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E101'''||'''Basic data manipulation'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E101''' ||'''Basic data manipulation''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E101-01||INSERT statement||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E101-01 ||INSERT statement ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E101-03||Searched UPDATE statement||<#00FF00>Yes||<#FFFF00>Partial||''correlation name'' not supported||
+ ||E101-03 ||Searched UPDATE statement ||<#00FF00>Yes ||<#FFFF00>Partial ||''correlation name'' not supported ||
- ||E101-04||Searched DELETE statement||<#00FF00>Yes||<#FFFF00>Partial||''correlation name'' not supported||
+ ||E101-04 ||Searched DELETE statement ||<#00FF00>Yes ||<#FFFF00>Partial ||''correlation name'' not supported ||
- ||'''E111'''||'''Single row select statement'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E111''' ||'''Single row select statement''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E121'''||'''Basic cursor support'''||<#FFFF00>Yes*||<#FFFF00>Yes*||Through JDBC  ||
+ ||'''E121''' ||'''Basic cursor support''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Through JDBC ||
- ||E121-01||Declare cursor||<#FF0000>No||<#FF0000>No||   ||
+ ||E121-01 ||Declare cursor ||<#FF0000>No ||<#FF0000>No || ||
- ||E121-02||ORDER BY columns need not be in select list||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E121-02 ||ORDER BY columns need not be in select list ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E121-03||Value expressions in ORDER BY clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E121-03 ||Value expressions in ORDER BY clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E121-04||OPEN statement||<#FF0000>No||<#FF0000>No||   ||
+ ||E121-04 ||OPEN statement ||<#FF0000>No ||<#FF0000>No || ||
- ||E121-06||Positioned UPDATE statement||<#00FF00>Yes||<#FFFF00>Partial||''correlation name'' not supported||
+ ||E121-06 ||Positioned UPDATE statement ||<#00FF00>Yes ||<#FFFF00>Partial ||''correlation name'' not supported ||
- ||E121-07||Positioned DELETE statement||<#00FF00>Yes||<#FFFF00>Partial||''correlation name'' not supported||
+ ||E121-07 ||Positioned DELETE statement ||<#00FF00>Yes ||<#FFFF00>Partial ||''correlation name'' not supported ||
- ||E121-08||CLOSE statement||<#FF0000>No||<#FF0000>No||   ||
+ ||E121-08 ||CLOSE statement ||<#FF0000>No ||<#FF0000>No || ||
- ||E121-10||FETCH statement||<#FF0000>No||<#FF0000>No||   ||
+ ||E121-10 ||FETCH statement ||<#FF0000>No ||<#FF0000>No || ||
- ||E121-17||WITH HOLD cursors||<#FF0000>No||<#FF0000>No||   ||
+ ||E121-17 ||WITH HOLD cursors ||<#FF0000>No ||<#FF0000>No || ||
- ||'''E131'''||'''Null value support (nulls in lieu of values)'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E131''' ||'''Null value support (nulls in lieu of values)''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E141'''||'''Basic integrity constraints'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E141''' ||'''Basic integrity constraints''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-01||NOT NULL constraints||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-01 ||NOT NULL constraints ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-02||UNIQUE constraints of NOT NULL columns||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-02 ||UNIQUE constraints of NOT NULL columns ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-03||PRIMARY KEY constraints||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-03 ||PRIMARY KEY constraints ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-04||Basic FOREIGN KEY constraint with the NO ACTION default||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-04 ||Basic FOREIGN KEY constraint with the NO ACTION default ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-06||CHECK constraints||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-06 ||CHECK constraints ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-07||Column defaults||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-07 ||Column defaults ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E141-08||NOT NULL inferred on PRIMARY KEY||<#00FF00>Yes (10.1)||<#00FF00>Yes (10.1)||Implemented from 10.1. [[http://issues.apache.org/jira/browse/DERBY-158|Issue DERBY-158]]  ||
+ ||E141-08 ||NOT NULL inferred on PRIMARY KEY ||<#00FF00>Yes (10.1) ||<#00FF00>Yes (10.1) ||Implemented from 10.1. [[http://issues.apache.org/jira/browse/DERBY-158|Issue DERBY-158]] ||
- ||E141-10||Names in a foreign key can be specified in any order||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||E141-10 ||Names in a foreign key can be specified in any order ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E151'''||'''Transaction support'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E151''' ||'''Transaction support''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||E151-01||COMMIT statement||<#FFFF00>Yes*||<#FFFF00>Yes*||Through JDBC Connection.commit, ij supports COMMIT statement||
+ ||E151-01 ||COMMIT statement ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Through JDBC Connection.commit, ij supports COMMIT statement ||
- ||E151-02||ROLLBACK statement||<#FFFF00>Yes*||<#FFFF00>Yes*||Through JDBC Connection.rollback, ij supports ROLLBACK statement||
+ ||E151-02 ||ROLLBACK statement ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Through JDBC Connection.rollback, ij supports ROLLBACK statement ||
- ||'''E152'''||'''Basic SET TRANSACTION statement'''||<#FFFF00>Yes*.||<#FFFF00>Yes*.||Se below.  ||
+ ||'''E152''' ||'''Basic SET TRANSACTION statement''' ||<#FFFF00>Yes*. ||<#FFFF00>Yes*. ||Se below. ||
- ||E152-01||SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE clause||<#FFFF00>Yes*||<#FFFF00>Yes*||SET [CURRENT] ISOLATION SERIALIZABLE. Connection.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE) is according to JDBC specification.  ||
+ ||E152-01 ||SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE clause ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||SET [CURRENT] ISOLATION SERIALIZABLE. Connection.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE) is according to JDBC specification. ||
- ||E152-02||SET TRANSACTION statement: READ ONLY and READ WRITE clauses||<#FFFF00>Yes*||<#FFFF00>Yes*||No SQL syntax. Connection.setReadWrite() is according to JDBC specification.  ||
+ ||E152-02 ||SET TRANSACTION statement: READ ONLY and READ WRITE clauses ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||No SQL syntax. Connection.setReadWrite() is according to JDBC specification. ||
- ||'''E153'''||'''Updatable queries with subqueries'''||<#FF0000>No||<#FF0000>No||   ||
+ ||'''E153''' ||'''Updatable queries with subqueries''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''E161'''||'''SQL comments using leading double minus'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''E161''' ||'''SQL comments using leading double minus''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''E171'''||SQLSTATE support||<#00FF00>Yes||<#00FF00>Yes||I think , have not checked all values)  ||
+ ||'''E171''' ||SQLSTATE support ||<#00FF00>Yes ||<#00FF00>Yes ||I think , have not checked all values) ||
- ||'''E182'''||'''Module language'''||N/A||<#FF0000>No||   ||
+ ||'''E182''' ||'''Module language''' ||N/A ||<#FF0000>No || ||
- ||'''F021'''||'''Basic information schema'''||<#FF0000>No||N/A||Note: JDBC !DatabaseMetadata is ok.  ||
+ ||'''F021''' ||'''Basic information schema''' ||<#FF0000>No ||N/A ||Note: JDBC !DatabaseMetadata is ok. ||
- ||F021-01||COLUMNS view||<#FF0000>No||N/A||   ||
+ ||F021-01 ||COLUMNS view ||<#FF0000>No ||N/A || ||
- ||F021-02||TABLES view||<#FF0000>No||N/A||   ||
+ ||F021-02 ||TABLES view ||<#FF0000>No ||N/A || ||
- ||F021-03||VIEWS view||<#FF0000>No||N/A||   ||
+ ||F021-03 ||VIEWS view ||<#FF0000>No ||N/A || ||
- ||F021-04||TABLE_CONSTRAINTS view||<#FF0000>No||N/A||   ||
+ ||F021-04 ||TABLE_CONSTRAINTS view ||<#FF0000>No ||N/A || ||
- ||F021_05||REFERENTIAL_CONSTRAINTS||<#FF0000>No||N/A||   ||
+ ||F021_05 ||REFERENTIAL_CONSTRAINTS ||<#FF0000>No ||N/A || ||
- ||F021-06||CHECK_CONSTRAINTS||<#FF0000>No||N/A||   ||
+ ||F021-06 ||CHECK_CONSTRAINTS ||<#FF0000>No ||N/A || ||
- ||'''F031'''||'''Basic schema manipulation'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F031''' ||'''Basic schema manipulation''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F031-01||CREATE TABLE statement to create persistent base tables||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F031-01 ||CREATE TABLE statement to create persistent base tables ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F031-02||CREATE VIEW statement||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F031-02 ||CREATE VIEW statement ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F031-03||GRANT statement||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||F031-03 ||GRANT statement ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||F031-04||ALTER TABLE statement: ADD COLUMN clause||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F031-04 ||ALTER TABLE statement: ADD COLUMN clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F031-13||DROP TABLE statement: RESTRICT clause||<#00FF00>Yes (Implicit)||<#00FF00>Yes (Implicit)||   ||
+ ||F031-13 ||DROP TABLE statement: RESTRICT clause ||<#00FF00>Yes (Implicit) ||<#00FF00>Yes (Implicit) || ||
- ||F031-16||DROP VIEW statement: RESTRICT clause||<#00FF00>Yes (Implicit)||<#00FF00>Yes (Implicit)||   ||
+ ||F031-16 ||DROP VIEW statement: RESTRICT clause ||<#00FF00>Yes (Implicit) ||<#00FF00>Yes (Implicit) || ||
- ||F031-19||REVOKE statement: RESTRICT clause||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||F031-19 ||REVOKE statement: RESTRICT clause ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||'''F041'''||'''Basic joined tables'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F041''' ||'''Basic joined tables''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-01||Inner join (but not necessarily the INNER keyword)||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-01 ||Inner join (but not necessarily the INNER keyword) ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-02||INNER keyword||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-02 ||INNER keyword ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-03||LEFT OUTER JOIN||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-03 ||LEFT OUTER JOIN ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-03||RIGHT OUTER JOIN||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-03 ||RIGHT OUTER JOIN ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-05||Outer joins can be nested||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-05 ||Outer joins can be nested ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F041-07||The inner table in a left or right outer join can also be used in an inner join||<#FF0000>No||<#FF0000>No||   ||
+ ||F041-07 ||The inner table in a left or right outer join can also be used in an inner join ||<#FF0000>No ||<#FF0000>No || ||
- ||F041-08||All comparison operators are supported (rather than just =)||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F041-08 ||All comparison operators are supported (rather than just =) ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F051'''||'''Basic date and time'''||<#FFFF00>Yes*||<#FFFF00>Yes*||See below.      ||
+ ||'''F051''' ||'''Basic date and time''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||See below. ||
- ||F051-01||DATE data type (including DATE literal)||<#FFFF00>Yes*||<#FFFF00>Yes*||DATE literal is implemented as built-in function. {d 'yyyy-mm-ff'} is according to JDBC specification.  ||
+ ||F051-01 ||DATE data type (including DATE literal) ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||DATE literal is implemented as built-in function. {d 'yyyy-mm-ff'} is according to JDBC specification. ||
- ||F051-02||TIME data type (including TIME literal) with fractional seconds precision of 0||<#FFFF00>Yes*||<#FFFF00>Yes*||TIME literal is implemented as built-in function. No precision in datatype. {t' hh:mm:ss'} is according to JDBC specification.  ||
+ ||F051-02 ||TIME data type (including TIME literal) with fractional seconds precision of 0 ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||TIME literal is implemented as built-in function. No precision in datatype. {t' hh:mm:ss'} is according to JDBC specification. ||
- ||F051-03||TIMESTAMP data type (including TIMESTAMP literal) with fractional seconds precision of 0 and 6||<#FFFF00>Yes*||<#FFFF00>Yes*||TIMESTAMP literal is implemented as built-in function. No precision spec in datatype. No timezone spec in datatype. {ts 'yyyy-mm-dd hh:mm:ss.f...'} is according to JDBC specification.  ||
+ ||F051-03 ||TIMESTAMP data type (including TIMESTAMP literal) with fractional seconds precision of 0 and 6 ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||TIMESTAMP literal is implemented as built-in function. No precision spec in datatype. No timezone spec in datatype. {ts 'yyyy-mm-dd hh:mm:ss.f...'} is according to JDBC specification. ||
- ||F051-04||Comparison predicate on DATE, TIME, and TIMESTAMP data types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F051-04 ||Comparison predicate on DATE, TIME, and TIMESTAMP data types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F051-05||Explicit CAST between datetime types and character types||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F051-05 ||Explicit CAST between datetime types and character types ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F051-06||CURRENT_DATE||<#FFFF00>Yes*||<#FFFF00>Yes*||No time zone in datetime value expression  ||
+ ||F051-06 ||CURRENT_DATE ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||No time zone in datetime value expression ||
- ||F051-07||LOCALTIME||<#FFFF00>Yes*.||<#FFFF00>Yes*.||{fn CURTIME()} is according to JDBC specification.  ||
+ ||F051-07 ||LOCALTIME ||<#FFFF00>Yes*. ||<#FFFF00>Yes*. ||{fn CURTIME()} is according to JDBC specification. ||
- ||F051-08||LOCALTIMESTAMP||<#FF0000>No.||<#FF0000>No.||   ||
+ ||F051-08 ||LOCALTIMESTAMP ||<#FF0000>No. ||<#FF0000>No. || ||
- ||'''F081'''||'''UNION and EXCEPT in views'''||<#FF0000>No||<#FF0000>No||UNION in 10.0. I suppose EXCEPT in 10.1, but does not work when this is written  ||
+ ||'''F081''' ||'''UNION and EXCEPT in views''' ||<#FF0000>No ||<#FF0000>No ||UNION in 10.0. I suppose EXCEPT in 10.1, but does not work when this is written ||
- ||'''F131'''||'''Grouped operations'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F131''' ||'''Grouped operations''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F131-01||WHERE, GROUP BY, and HAVING clauses supported in queries with grouped views||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F131-01 ||WHERE, GROUP BY, and HAVING clauses supported in queries with grouped views ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F131-02||Multiple tables supported in queries with grouped views||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F131-02 ||Multiple tables supported in queries with grouped views ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F131-03||Set functions supported in queries with grouped views||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F131-03 ||Set functions supported in queries with grouped views ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F131-04||Subqueries with GROUP BY and HAVING clauses and grouped views||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F131-04 ||Subqueries with GROUP BY and HAVING clauses and grouped views ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F131-05||Single row SELECT with GROUP BY and HAVING clauses and grouped views||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F131-05 ||Single row SELECT with GROUP BY and HAVING clauses and grouped views ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F181'''||'''Multiple module support'''||<#FF0000>No||<#FF0000>No||   ||
+ ||'''F181''' ||'''Multiple module support''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F201'''||'''CAST function'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F201''' ||'''CAST function''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F221'''||'''Explicit defaults'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F221''' ||'''Explicit defaults''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F261'''||'''CASE expression'''||<#FFFF00>Yes*||<#FFFF00>Yes*||   ||
+ ||'''F261''' ||'''CASE expression''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* || ||
- ||F261-01||Simple CASE||<#FF0000>No||<#FF0000>No||   ||
+ ||F261-01 ||Simple CASE ||<#FF0000>No ||<#FF0000>No || ||
- ||F261-02||Searched CASE||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F261-02 ||Searched CASE ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F261-03||NULLIF function||<#00FF00>Yes (10.1.3)||<#00FF00>Yes (10.1.3)||Works only for CHAR types prior to 10.1.3. ||
+ ||F261-03 ||NULLIF function ||<#00FF00>Yes (10.1.3) ||<#00FF00>Yes (10.1.3) ||Works only for CHAR types prior to 10.1.3. ||
- ||F261-04||COALESCE function||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F261-04 ||COALESCE function ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F311'''||'''Schema definition statement'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F311''' ||'''Schema definition statement''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F311-01||Create schema||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F311-01 ||Create schema ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F311-02||CREATE TABLE for persistent base tables||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F311-02 ||CREATE TABLE for persistent base tables ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F311-03||CREATE VIEW||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||F311-03 ||CREATE VIEW ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F311-04||CREATE VIEW: WITH CHECK OPTION||<#FF0000>No||<#FF0000>No||   ||
+ ||F311-04 ||CREATE VIEW: WITH CHECK OPTION ||<#FF0000>No ||<#FF0000>No || ||
- ||F311-05||GRANT statement||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)||   ||
+ ||F311-05 ||GRANT statement ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||'''F471'''||'''Scalar subquery values'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F471''' ||'''Scalar subquery values''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F481'''||'''Expanded NULL predicate'''||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||'''F481''' ||'''Expanded NULL predicate''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F501'''||'''Features and conformance views'''||<#FF0000>No||N/A||   ||
+ ||'''F501''' ||'''Features and conformance views''' ||<#FF0000>No ||N/A || ||
- ||F501-01||SQL_FEATURES view||<#FF0000>No||N/A||   ||
+ ||F501-01 ||SQL_FEATURES view ||<#FF0000>No ||N/A || ||
- ||F501-02||SQL_SIZING view||<#FF0000>No||N/A||   ||
+ ||F501-02 ||SQL_SIZING view ||<#FF0000>No ||N/A || ||
- ||F501-03||SQL_LANGUAGES view||<#FF0000>No||N/A||   ||
+ ||F501-03 ||SQL_LANGUAGES view ||<#FF0000>No ||N/A || ||
- ||'''F812'''||'''Basic flagging'''||<#FF0000>No||<#FF0000>No||   ||
+ ||'''F812''' ||'''Basic flagging''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S011'''||'''Distinct data types'''||<#FF0000>No||<#FF0000>No||   ||
+ ||'''S011''' ||'''Distinct data types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||S011-01||USER_DEFINED_TYPES view||<#FF0000>No||N/A||   ||
+ ||S011-01 ||USER_DEFINED_TYPES view ||<#FF0000>No ||N/A || ||
- ||'''T321'''||'''Basic SQL invoked routines'''||<#00FF00>Yes||<#00FF00>Yes||Language Java. ''Have not checked all the details''  ||
+ ||'''T321''' ||'''Basic SQL invoked routines''' ||<#00FF00>Yes ||<#00FF00>Yes ||Language Java. ''Have not checked all the details'' ||
- ||T321-01||User-defined functions with no overloading||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||T321-01 ||User-defined functions with no overloading ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T321-02||User-defined stored procedures with no overloading||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||T321-02 ||User-defined stored procedures with no overloading ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T321-03||Function invocation||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||T321-03 ||Function invocation ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T321-04||CALL statement||<#00FF00>Yes||<#00FF00>Yes||   ||
+ ||T321-04 ||CALL statement ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T321-05||RETURN statement||<#FF0000>No||<#FF0000>No||   ||
+ ||T321-05 ||RETURN statement ||<#FF0000>No ||<#FF0000>No || ||
- ||T321-06||ROUTINES view||<#FF0000>No||N/A||   ||
+ ||T321-06 ||ROUTINES view ||<#FF0000>No ||N/A || ||
- ||T321-07||PARAMETERS view||<#FF0000>No||N/A||   ||
+ ||T321-07 ||PARAMETERS view ||<#FF0000>No ||N/A || ||
- ||'''T632'''||'''IN predicate with one list element'''||N/A||<#00FF00>Yes|| ||
+ ||'''T632''' ||'''IN predicate with one list element''' ||N/A ||<#00FF00>Yes || ||
- |||||||||| ||
+ ||||||||||<style="text-align:center"> ||
- ||||||||||~+'''''SQL-99 Outside Core / SQL-2003 Optional'''''+~||
+ ||||||||||<style="text-align:center">~+'''''SQL-99 Outside Core / SQL-2003 Optional'''''+~ ||
- ||'''Feature ID'''||'''Feature name'''||'''SQL-99 Outside Core'''||'''SQL-2003 Optional'''||'''Note'''  ||
+ ||'''Feature ID''' ||'''Feature name''' ||'''SQL-99 Outside Core''' ||'''SQL-2003 Optional''' ||'''Note''' ||
- ||'''B011'''||'''Embedded Ada'''||N/A||<#FF0000>No|| ||
+ ||'''B011''' ||'''Embedded Ada''' ||N/A ||<#FF0000>No || ||
- ||'''B012'''||'''Embedded C'''||N/A||<#FF0000>No|| ||
+ ||'''B012''' ||'''Embedded C''' ||N/A ||<#FF0000>No || ||
- ||'''B013'''||'''Embedded COBOL'''||N/A||<#FF0000>No|| ||
+ ||'''B013''' ||'''Embedded COBOL''' ||N/A ||<#FF0000>No || ||
- ||'''B014'''||'''Embedded Fortran'''||N/A||<#FF0000>No|| ||
+ ||'''B014''' ||'''Embedded Fortran''' ||N/A ||<#FF0000>No || ||
- ||'''B015'''||'''Embedded MUMPS'''||N/A||<#FF0000>No|| ||
+ ||'''B015''' ||'''Embedded MUMPS''' ||N/A ||<#FF0000>No || ||
- ||'''B016'''||'''Embedded Pascal'''||N/A||<#FF0000>No|| ||
+ ||'''B016''' ||'''Embedded Pascal''' ||N/A ||<#FF0000>No || ||
- ||'''B017'''||'''Embedded PL/I'''||N/A||<#FF0000>No|| ||
+ ||'''B017''' ||'''Embedded PL/I''' ||N/A ||<#FF0000>No || ||
- ||'''B021'''||'''Direct SQL'''||N/A||<#FF0000>No|| ||
+ ||'''B021''' ||'''Direct SQL''' ||N/A ||<#FF0000>No || ||
- ||'''B031'''||'''Basic dynamic SQL'''||N/A||<#FF0000>No|| ||
+ ||'''B031''' ||'''Basic dynamic SQL''' ||N/A ||<#FF0000>No || ||
- ||'''B032'''||'''Extended dynamic SQL'''||N/A||<#FF0000>No|| ||
+ ||'''B032''' ||'''Extended dynamic SQL''' ||N/A ||<#FF0000>No || ||
- ||B032-01|| <describe input statement>||N/A||<#FF0000>No|| ||
+ ||B032-01 ||<describe input statement> ||N/A ||<#FF0000>No || ||
- ||'''B033'''||'''Untyped SQL-invoked function arguments'''||N/A||<#FF0000>No|| ||
+ ||'''B033''' ||'''Untyped SQL-invoked function arguments''' ||N/A ||<#FF0000>No || ||
- ||'''B034'''||'''Dynamic specification of cursor attributes'''||N/A||<#FF0000>No|| ||
+ ||'''B034''' ||'''Dynamic specification of cursor attributes''' ||N/A ||<#FF0000>No || ||
- ||'''B041'''||'''Extensions to embedded SQL exception declarations'''||N/A||<#FF0000>No|| ||
+ ||'''B041''' ||'''Extensions to embedded SQL exception declarations''' ||N/A ||<#FF0000>No || ||
- ||'''B051'''||'''Enhanced execution rights'''||N/A||<#FF0000>No|| ||
+ ||'''B051''' ||'''Enhanced execution rights''' ||N/A ||<#FF0000>No || ||
- ||'''B111'''||'''Module language Ada'''||N/A||<#FF0000>No|| ||
+ ||'''B111''' ||'''Module language Ada''' ||N/A ||<#FF0000>No || ||
- ||'''B112'''||'''Module language C'''||N/A||<#FF0000>No|| ||
+ ||'''B112''' ||'''Module language C''' ||N/A ||<#FF0000>No || ||
- ||'''B113'''||'''Module language COBOL'''||N/A||<#FF0000>No|| ||
+ ||'''B113''' ||'''Module language COBOL''' ||N/A ||<#FF0000>No || ||
- ||'''B114'''||'''Module language Fortran'''||N/A||<#FF0000>No|| ||
+ ||'''B114''' ||'''Module language Fortran''' ||N/A ||<#FF0000>No || ||
- ||'''B115'''||'''Module language MUMPS'''||N/A||<#FF0000>No|| ||
+ ||'''B115''' ||'''Module language MUMPS''' ||N/A ||<#FF0000>No || ||
- ||'''B116'''||'''Module language Pascal'''||N/A||<#FF0000>No|| ||
+ ||'''B116''' ||'''Module language Pascal''' ||N/A ||<#FF0000>No || ||
- ||'''B117'''||'''Module language PL/I'''||N/A||<#FF0000>No|| ||
+ ||'''B117''' ||'''Module language PL/I''' ||N/A ||<#FF0000>No || ||
- ||'''B121'''||'''Routine language Ada'''||N/A||<#FF0000>No|| ||
+ ||'''B121''' ||'''Routine language Ada''' ||N/A ||<#FF0000>No || ||
- ||'''B122'''||'''Routine language C'''||N/A||<#FF0000>No|| ||
+ ||'''B122''' ||'''Routine language C''' ||N/A ||<#FF0000>No || ||
- ||'''B123'''||'''Routine language COBOL'''||N/A||<#FF0000>No|| ||
+ ||'''B123''' ||'''Routine language COBOL''' ||N/A ||<#FF0000>No || ||
- ||'''B124'''||'''Routine language Fortran'''||N/A||<#FF0000>No|| ||
+ ||'''B124''' ||'''Routine language Fortran''' ||N/A ||<#FF0000>No || ||
- ||'''B125'''||'''Routine language MUMPS'''||N/A||<#FF0000>No|| ||
+ ||'''B125''' ||'''Routine language MUMPS''' ||N/A ||<#FF0000>No || ||
- ||'''B126'''||'''Routine language Pascal'''||N/A||<#FF0000>No|| ||
+ ||'''B126''' ||'''Routine language Pascal''' ||N/A ||<#FF0000>No || ||
- ||'''B127'''||'''Routine language PL/I'''||N/A||<#FF0000>No|| ||
+ ||'''B127''' ||'''Routine language PL/I''' ||N/A ||<#FF0000>No || ||
- ||'''B128'''||'''Routine language SQL'''||N/A||<#FF0000>No|| ||
+ ||'''B128''' ||'''Routine language SQL''' ||N/A ||<#FF0000>No || ||
- ||'''F032'''||'''CASCADE drop behavior'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F032''' ||'''CASCADE drop behavior''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F033'''||'''ALTER TABLE statement: DROP COLUMN clause'''||<#00FF00>Yes||<#00FF00>Yes|| From 10.3 ||
+ ||'''F033''' ||'''ALTER TABLE statement: DROP COLUMN clause''' ||<#00FF00>Yes ||<#00FF00>Yes ||From 10.3 ||
- ||'''F034'''||'''Extended REVOKE statement'''||<#FF0000>No||<#FF0000>No||[[http://issues.apache.org/jira/browse/DERBY-1631|Issue DERBY-1631]], [[http://issues.apache.org/jira/browse/DERBY-1632|Issue DERBY-1632]] and [[http://issues.apache.org/jira/browse/DERBY-1782|Issue DERBY-1782 ]]||
+ ||'''F034''' ||'''Extended REVOKE statement''' ||<#FF0000>No ||<#FF0000>No ||[[http://issues.apache.org/jira/browse/DERBY-1631|Issue DERBY-1631]], [[http://issues.apache.org/jira/browse/DERBY-1632|Issue DERBY-1632]] and [[http://issues.apache.org/jira/browse/DERBY-1782|Issue DERBY-1782]] ||
- ||F034-01||REVOKE statement performed by other than the owner of a schema object||<#FF0000>No||<#FF0000>No|| ||
+ ||F034-01 ||REVOKE statement performed by other than the owner of a schema object ||<#FF0000>No ||<#FF0000>No || ||
- ||F034-02||REVOKE statement: GRANT OPTION FOR clause ||<#FF0000>No||<#FF0000>No|| ||
+ ||F034-02 ||REVOKE statement: GRANT OPTION FOR clause ||<#FF0000>No ||<#FF0000>No || ||
- ||F034-03||REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION||<#FF0000>No||<#FF0000>No|| ||
+ ||F034-03 ||REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F052'''||'''Intervals and datetime arithmetic'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F052''' ||'''Intervals and datetime arithmetic''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F053'''||'''OVERLAPS predicate'''||N/A||<#FF0000>No|| ||
+ ||'''F053''' ||'''OVERLAPS predicate''' ||N/A ||<#FF0000>No || ||
- ||'''F111'''||'''Isolation levels other than SERIALIZABLE'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F111''' ||'''Isolation levels other than SERIALIZABLE''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F111-01||READ UNCOMMITTED isolation level||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F111-01 ||READ UNCOMMITTED isolation level ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F111-02||READ COMMITTED isolation level||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F111-02 ||READ COMMITTED isolation level ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F111-03||REPEATABLE READ isolation level||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F111-03 ||REPEATABLE READ isolation level ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F121'''||'''Basic diagnostics management'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F121''' ||'''Basic diagnostics management''' ||<#FF0000>No ||<#FF0000>No || ||
- ||F121-01||GET DIAGNOSTICS statement||<#FF0000>No||<#FF0000>No|| ||
+ ||F121-01 ||GET DIAGNOSTICS statement ||<#FF0000>No ||<#FF0000>No || ||
- ||F121-02||SET TRANSACTION statement: DIAGNOSTICS SIZE clause||<#FF0000>No||<#FF0000>No|| ||
+ ||F121-02 ||SET TRANSACTION statement: DIAGNOSTICS SIZE clause ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F171'''||'''Multiple schemas per user'''||<#FF0000>No||<#FF0000>No||Derby does not support SQL users||
+ ||'''F171''' ||'''Multiple schemas per user''' ||<#FF0000>No ||<#FF0000>No ||Derby does not support SQL users ||
- ||'''F191'''||'''Referential delete actions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F191''' ||'''Referential delete actions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F222'''||'''INSERT statement: DEFAULT VALUES clause'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F222''' ||'''INSERT statement: DEFAULT VALUES clause''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F231'''||'''Privilege tables'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F231''' ||'''Privilege tables''' ||<#FF0000>No ||<#FF0000>No || ||
- ||F231-01||TABLE_PRIVILEGES view||<#FF0000>No||<#FF0000>No|| ||
+ ||F231-01 ||TABLE_PRIVILEGES view ||<#FF0000>No ||<#FF0000>No || ||
- ||F231-02||COLUMN_PRIVILEGES view||<#FF0000>No||<#FF0000>No|| ||
+ ||F231-02 ||COLUMN_PRIVILEGES view ||<#FF0000>No ||<#FF0000>No || ||
- ||F231-03||USAGE_PRIVILEGES view||<#FF0000>No||<#FF0000>No|| ||
+ ||F231-03 ||USAGE_PRIVILEGES view ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F251'''||'''Domain support'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F251''' ||'''Domain support''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F262'''||'''Extended CASE expression'''||N/A|| || ||
+ ||'''F262''' ||'''Extended CASE expression''' ||N/A || || ||
- ||'''F271'''||'''Compound character literals'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F271''' ||'''Compound character literals''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F281'''||'''LIKE enhancements'''||<#00FF00>Yes (10.3) ||<#00FF00>Yes (10.3)|| In earlier versions (10-0 - 10.2): The <escape character> had to be a <value specification>||
+ ||'''F281''' ||'''LIKE enhancements''' ||<#00FF00>Yes (10.3) ||<#00FF00>Yes (10.3) ||In earlier versions (10-0 - 10.2): The <escape character> had to be a <value specification> ||
- ||'''F291'''||'''UNIQUE predicate'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F291''' ||'''UNIQUE predicate''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F301'''||'''CORRESPONDING in query expressions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F301''' ||'''CORRESPONDING in query expressions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F302'''||'''INTERSECT table operator'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F302''' ||'''INTERSECT table operator''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F302-01||INTERSECT DISTINCT table operator||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F302-01 ||INTERSECT DISTINCT table operator ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||F302-02||INTERSECT ALL table operator||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F302-02 ||INTERSECT ALL table operator ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F304'''||'''EXCEPT ALL table operator'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F304''' ||'''EXCEPT ALL table operator''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F312'''||'''MERGE statement'''||N/A||<#FF0000>No|| ||
+ ||'''F312''' ||'''MERGE statement''' ||N/A ||<#FF0000>No || ||
- ||'''F321'''||'''User authorization'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F321''' ||'''User authorization''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F341'''||'''Usage tables'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F341''' ||'''Usage tables''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F361'''||'''Subprogram support'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F361''' ||'''Subprogram support''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F381'''||'''Extended schema manipulation'''||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||'''F381''' ||'''Extended schema manipulation''' ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||F381-01||ALTER TABLE statement: ALTER COLUMN clause||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||F381-01 ||ALTER TABLE statement: ALTER COLUMN clause ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||F381-02||ALTER TABLE statement: ADD CONSTRAINT clause||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||F381-02 ||ALTER TABLE statement: ADD CONSTRAINT clause ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||F381-03||ALTER TABLE statement: DROP CONSTRAINT clause||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||F381-03 ||ALTER TABLE statement: DROP CONSTRAINT clause ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F391'''||'''Long identifiers'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F391''' ||'''Long identifiers''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F392'''||'''Unicode escapes in identifiers'''||N/A||<#FF0000>No|| ||
+ ||'''F392''' ||'''Unicode escapes in identifiers''' ||N/A ||<#FF0000>No || ||
- ||'''F393'''||'''Unicode escapes in literals'''||N/A||<#FF0000>No|| ||
+ ||'''F393''' ||'''Unicode escapes in literals''' ||N/A ||<#FF0000>No || ||
- ||'''F401'''||'''Extended joined table'''||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||'''F401''' ||'''Extended joined table''' ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||F401-01||NATURAL JOIN||<#00FF00>Yes||<#00FF00>Yes|| Since 10.6 ||
+ ||F401-01 ||NATURAL JOIN ||<#00FF00>Yes ||<#00FF00>Yes ||Since 10.6 ||
- ||F401-02||FULL OUTER JOIN||<#FF0000>No||<#FF0000>No|| ||
+ ||F401-02 ||FULL OUTER JOIN ||<#FF0000>No ||<#FF0000>No || ||
- ||F401-04||CROSS JOIN||<#00FF00>Yes||<#00FF00>Yes|| Since 10.6 ||
+ ||F401-04 ||CROSS JOIN ||<#00FF00>Yes ||<#00FF00>Yes ||Since 10.6 ||
- ||'''F402'''||'''Named column joins for LOBs, arrays, and multisets'''||N/A||<#00FF00>Yes|| ||
+ ||'''F402''' ||'''Named column joins for LOBs, arrays, and multisets''' ||N/A ||<#00FF00>Yes || ||
- ||'''F411'''||'''Time zone specification'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F411''' ||'''Time zone specification''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F421'''||'''National character'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F421''' ||'''National character''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F431'''||'''Read-only scrollable cursors'''||<#FFFF00>Yes*||<#FFFF00>Yes*||Through JDBC. (Only insensitive cursors. See T231) ||
+ ||'''F431''' ||'''Read-only scrollable cursors''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Through JDBC. (Only insensitive cursors. See T231) ||
- ||F431-01||FETCH with explicit NEXT||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-01 ||FETCH with explicit NEXT ||<#FF0000>No ||<#FF0000>No || ||
- ||F431-02||FETCH FIRST||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-02 ||FETCH FIRST ||<#FF0000>No ||<#FF0000>No || ||
- ||F431-03||FETCH LAST||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-03 ||FETCH LAST ||<#FF0000>No ||<#FF0000>No || ||
- ||F431-04||FETCH PRIOR||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-04 ||FETCH PRIOR ||<#FF0000>No ||<#FF0000>No || ||
- ||F431-05||FETCH ABSOLUTE||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-05 ||FETCH ABSOLUTE ||<#FF0000>No ||<#FF0000>No || ||
- ||F431-06||FETCH RELATIVE||<#FF0000>No||<#FF0000>No|| ||
+ ||F431-06 ||FETCH RELATIVE ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F441'''||'''Extended set function support'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F441''' ||'''Extended set function support''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F442'''||'''Mixed column references in set functions'''||N/A||<#FF0000>No|| ||
+ ||'''F442''' ||'''Mixed column references in set functions''' ||N/A ||<#FF0000>No || ||
- ||'''F451'''||'''Character set definition'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F451''' ||'''Character set definition''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F461'''||'''Named character sets'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F461''' ||'''Named character sets''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F491'''||'''Constraint management'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F491''' ||'''Constraint management''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F502'''||'''Enhanced documentation tables'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F502''' ||'''Enhanced documentation tables''' ||<#FF0000>No ||<#FF0000>No || ||
- ||F502-01||SQL_SIZING_PROFILES view||<#FF0000>No||<#FF0000>No|| ||
+ ||F502-01 ||SQL_SIZING_PROFILES view ||<#FF0000>No ||<#FF0000>No || ||
- ||F502-02||SQL_IMPLEMENTATION_INFO view||<#FF0000>No||<#FF0000>No|| ||
+ ||F502-02 ||SQL_IMPLEMENTATION_INFO view ||<#FF0000>No ||<#FF0000>No || ||
- ||F502-03||SQL_PACKAGES view||<#FF0000>No||<#FF0000>No|| ||
+ ||F502-03 ||SQL_PACKAGES view ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F521'''||'''Assertions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F521''' ||'''Assertions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F531'''||'''Temporary tables'''||<#FFFF00>Partial||<#FFFF00>Partial|| Global tables ||
+ ||'''F531''' ||'''Temporary tables''' ||<#FFFF00>Partial ||<#FFFF00>Partial ||Global tables ||
- ||'''F555'''||'''Enhanced seconds precision'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F555''' ||'''Enhanced seconds precision''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F561'''||'''Full value expressions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F561''' ||'''Full value expressions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F571'''||'''Truth value tests'''||<#FF0000>No||<#FF0000>No|| Due for 10.2? [[http://issues.apache.org/jira/browse/DERBY-499|Issue DERBY-499]]||
+ ||'''F571''' ||'''Truth value tests''' ||<#FF0000>No ||<#FF0000>No ||Due for 10.2? [[http://issues.apache.org/jira/browse/DERBY-499|Issue DERBY-499]] ||
- ||'''F591'''||'''Derived tables'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F591''' ||'''Derived tables''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F611'''||'''Indicator data types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F611''' ||'''Indicator data types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F641'''||'''Row and table constructors'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F641''' ||'''Row and table constructors''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F651'''||'''Catalog name qualifiers'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F651''' ||'''Catalog name qualifiers''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F661'''||'''Simple tables'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F661''' ||'''Simple tables''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F671'''||'''Subqueries in CHECK'''|| || || ||
+ ||'''F671''' ||'''Subqueries in CHECK''' || || || ||
- ||'''F672'''||'''Retrospective check constraints'''||N/A|| || ||
+ ||'''F672''' ||'''Retrospective check constraints''' ||N/A || || ||
- ||'''F691'''||'''Collation and translation'''||<#FF0000>Partial||<#FF0000>Partial|| DERBY-1478 Starting Derby 10.3, user can create a database with territory based collation ||
+ ||'''F691''' ||'''Collation and translation''' ||<#FF0000>Partial ||<#FF0000>Partial ||DERBY-1478 Starting Derby 10.3, user can create a database with territory based collation ||
- ||'''F692'''||'''Enhanced collation support'''||N/A||<#FF0000>No|| ||
+ ||'''F692''' ||'''Enhanced collation support''' ||N/A ||<#FF0000>No || ||
- ||'''F693'''||'''SQL-session and client module collations'''||N/A||<#FF0000>No|| ||
+ ||'''F693''' ||'''SQL-session and client module collations''' ||N/A ||<#FF0000>No || ||
- ||'''F695'''||'''Translation support'''||N/A||<#FF0000>No|| ||
+ ||'''F695''' ||'''Translation support''' ||N/A ||<#FF0000>No || ||
- ||'''F696'''||'''Additional translation documentation'''||N/A||<#FF0000>No|| ||
+ ||'''F696''' ||'''Additional translation documentation''' ||N/A ||<#FF0000>No || ||
- ||'''F701'''||'''Referential update actions'''||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||'''F701''' ||'''Referential update actions''' ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||'''F711'''||'''ALTER domain'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F711''' ||'''ALTER domain''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F721'''||'''Deferrable constraints'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F721''' ||'''Deferrable constraints''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F731'''||'''INSERT column privileges'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F731''' ||'''INSERT column privileges''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F741'''||'''Referential MATCH types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F741''' ||'''Referential MATCH types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F751'''||'''View CHECK enhancements'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F751''' ||'''View CHECK enhancements''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F761'''||'''Session management'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F761''' ||'''Session management''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F771'''||'''Connection management'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F771''' ||'''Connection management''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F781'''||'''Self-referencing operations'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''F781''' ||'''Self-referencing operations''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''F791'''||'''Insensitive cursors'''||<#FFFF00>Yes*||<#FFFF00>Yes*||Through JDBC||
+ ||'''F791''' ||'''Insensitive cursors''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Through JDBC ||
- ||'''F801'''||'''Full set function '''||<#FFFF00>Partial||<#FFFF00>Partial||DISTINCT in more than one aggregate function will not work, but SELECT DISTINCT with DISTINCT in one aggregate function will work. ||
+ ||'''F801''' ||'''Full set function ''' ||<#FFFF00>Partial ||<#FFFF00>Partial ||DISTINCT in more than one aggregate function will not work, but SELECT DISTINCT with DISTINCT in one aggregate function will work. ||
- ||'''F811'''||'''Extended flagging'''||<#FF0000>No||N/A|| ||
+ ||'''F811''' ||'''Extended flagging''' ||<#FF0000>No ||N/A || ||
- ||'''F813'''||'''Extended flagging -- Part 1, Subclause 8.5, "SQL flagger": With "level of flagging" specified to be Core SQL Flagging and "extent of checking" specified to be Catalog Lookup'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F813''' ||'''Extended flagging -- Part 1, Subclause 8.5, "SQL flagger": With "level of flagging" specified to be Core SQL Flagging and "extent of checking" specified to be Catalog Lookup''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F821'''||'''Local table references'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''F821''' ||'''Local table references''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''F831'''||'''Full cursor update'''||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||'''F831''' ||'''Full cursor update''' ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||F831-01||Updatable scrollable cursors||<#FFFF00>Partial (10.2) ||<#FFFF00>Partial (10.2)||Since 10.2: Insensitive result set cursors (Sensitive: See T231)||
+ ||F831-01 ||Updatable scrollable cursors ||<#FFFF00>Partial (10.2) ||<#FFFF00>Partial (10.2) ||Since 10.2: Insensitive result set cursors (Sensitive: See T231) ||
- ||F831-02||Updatable ordered cursors||<#FF0000>No||<#FF0000>No|| ||
+ ||F831-02 ||Updatable ordered cursors ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S023'''||'''Basic structured types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S023''' ||'''Basic structured types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S024'''||'''Enhanced structured types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S024''' ||'''Enhanced structured types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S025'''||'''Final structured types'''||N/A||<#FF0000>No|| ||
+ ||'''S025''' ||'''Final structured types''' ||N/A ||<#FF0000>No || ||
- ||'''S026'''||'''Self-referencing structured types'''||N/A||<#FF0000>No|| ||
+ ||'''S026''' ||'''Self-referencing structured types''' ||N/A ||<#FF0000>No || ||
- ||'''S027'''||'''Create method by specific method name'''||N/A||<#FF0000>No|| ||
+ ||'''S027''' ||'''Create method by specific method name''' ||N/A ||<#FF0000>No || ||
- ||'''S028'''||'''Permutable UDT options list'''||N/A||<#FF0000>No|| ||
+ ||'''S028''' ||'''Permutable UDT options list''' ||N/A ||<#FF0000>No || ||
- ||'''S041'''||'''Basic reference types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S041''' ||'''Basic reference types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S043'''||'''Enhanced reference types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S043''' ||'''Enhanced reference types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S051'''||'''Create table of type'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S051''' ||'''Create table of type''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S071'''||'''SQL paths in function and type name resolution'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S071''' ||'''SQL paths in function and type name resolution''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S081'''||'''Subtables'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S081''' ||'''Subtables''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S091'''||'''Basic array support'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S091''' ||'''Basic array support''' ||<#FF0000>No ||<#FF0000>No || ||
- ||S091-01||Arrays of built-in data types||<#FF0000>No||<#FF0000>No|| ||
+ ||S091-01 ||Arrays of built-in data types ||<#FF0000>No ||<#FF0000>No || ||
- ||S091-02||Arrays of distinct types||<#FF0000>No||<#FF0000>No|| ||
+ ||S091-02 ||Arrays of distinct types ||<#FF0000>No ||<#FF0000>No || ||
- ||S091-03||Array expressions||<#FF0000>No||<#FF0000>No|| ||
+ ||S091-03 ||Array expressions ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S092'''||'''Arrays of user-defined types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S092''' ||'''Arrays of user-defined types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S094'''||'''Arrays of reference types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S094''' ||'''Arrays of reference types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S095'''||'''Array constructors by query'''||N/A||<#FF0000>No|| ||
+ ||'''S095''' ||'''Array constructors by query''' ||N/A ||<#FF0000>No || ||
- ||'''S096'''||'''Optional array bounds'''||N/A||<#FF0000>No|| ||
+ ||'''S096''' ||'''Optional array bounds''' ||N/A ||<#FF0000>No || ||
- ||'''S097'''||'''Array element assignment'''||N/A||<#FF0000>No|| ||
+ ||'''S097''' ||'''Array element assignment''' ||N/A ||<#FF0000>No || ||
- ||'''S111'''||'''ONLY in query expressions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S111''' ||'''ONLY in query expressions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S151'''||'''Type predicate'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S151''' ||'''Type predicate''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S161'''||'''Subtype treatment'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S161''' ||'''Subtype treatment''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S162'''||'''Subtype treatment for references'''||N/A||<#FF0000>No|| ||
+ ||'''S162''' ||'''Subtype treatment for references''' ||N/A ||<#FF0000>No || ||
- ||'''S201'''||'''SQL-invoked routines on arrays'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S201''' ||'''SQL-invoked routines on arrays''' ||<#FF0000>No ||<#FF0000>No || ||
- ||S201-01||Array parameters||<#FF0000>No||<#FF0000>No|| ||
+ ||S201-01 ||Array parameters ||<#FF0000>No ||<#FF0000>No || ||
- ||S201-02||Array as result type of functions||<#FF0000>No||<#FF0000>No|| ||
+ ||S201-02 ||Array as result type of functions ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S202'''||'''SQL-invoked routines on multisets'''||N/A||<#FF0000>No|| ||
+ ||'''S202''' ||'''SQL-invoked routines on multisets''' ||N/A ||<#FF0000>No || ||
- ||'''S211'''||'''User-defined cast functions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S211''' ||'''User-defined cast functions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S231'''||'''Structured type locators'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S231''' ||'''Structured type locators''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S232'''||'''Array locators'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S232''' ||'''Array locators''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S233'''||'''Multiset locators'''||N/A||<#FF0000>No|| ||
+ ||'''S233''' ||'''Multiset locators''' ||N/A ||<#FF0000>No || ||
- ||'''S241'''||'''Transform functions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S241''' ||'''Transform functions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S242'''||'''Alter transform statement'''||N/A||<#FF0000>No|| ||
+ ||'''S242''' ||'''Alter transform statement''' ||N/A ||<#FF0000>No || ||
- ||'''S251'''||'''User-defined orderings'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S251''' ||'''User-defined orderings''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S261'''||'''Specific type method'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''S261''' ||'''Specific type method''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''S271'''||'''Basic multiset support'''||N/A||<#FF0000>No|| ||
+ ||'''S271''' ||'''Basic multiset support''' ||N/A ||<#FF0000>No || ||
- ||'''S272'''||'''Multisets of user-defined types'''||N/A||<#FF0000>No|| ||
+ ||'''S272''' ||'''Multisets of user-defined types''' ||N/A ||<#FF0000>No || ||
- ||'''S274'''||'''Multisets of reference types'''||N/A||<#FF0000>No|| ||
+ ||'''S274''' ||'''Multisets of reference types''' ||N/A ||<#FF0000>No || ||
- ||'''S275'''||'''Advanced multiset support'''||N/A||<#FF0000>No|| ||
+ ||'''S275''' ||'''Advanced multiset support''' ||N/A ||<#FF0000>No || ||
- ||'''S281'''||'''Nested collection types'''||N/A||<#FF0000>No|| ||
+ ||'''S281''' ||'''Nested collection types''' ||N/A ||<#FF0000>No || ||
- ||'''S291'''||'''Unique constraint on entire row'''||N/A||<#FF0000>No|| ||
+ ||'''S291''' ||'''Unique constraint on entire row''' ||N/A ||<#FF0000>No || ||
- ||'''T011'''||'''Timestamp in Information Schema'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T011''' ||'''Timestamp in Information Schema''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T031'''||'''BOOLEAN data type'''||<#00FF00>Yes||<#00FF00>Yes|| Since 10.7. ||
+ ||'''T031''' ||'''BOOLEAN data type''' ||<#00FF00>Yes ||<#00FF00>Yes ||Since 10.7. ||
- ||'''T041'''||'''Basic LOB data type support'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''T041''' ||'''Basic LOB data type support''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T041-01|| BLOB data type -- Subclause 5.2, "<token> and <separator>": The <reserved word>s BINARY, BLOB, LARGE, and OBJECT -- Subclause 5.3, "<literal>": <binary string literal> -- Subclause 6.1, "<data type>": The BINARY LARGE OBJECT data type -- Subclause 6.28, "<string value expression>": For values of type BINARY LARGE OBJECT -- Subclause 13.6, "Data type correspondences": Type correspondences for BINARY LARGE OBJECT for all supported languages||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T041-01 ||BLOB data type -- Subclause 5.2, "<token> and <separator>": The <reserved word>s BINARY, BLOB, LARGE, and OBJECT -- Subclause 5.3, "<literal>": <binary string literal> -- Subclause 6.1, "<data type>": The BINARY LARGE OBJECT data type -- Subclause 6.28, "<string value expression>": For values of type BINARY LARGE OBJECT -- Subclause 13.6, "Data type correspondences": Type correspondences for BINARY LARGE OBJECT for all supported languages ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T041-02|| CLOB data type -- Subclause 5.2, "<token> and <separator>": The <reserved word>s CHARACTER, CLOB, LARGE, and OBJECT -- Subclause 6.1, "<data type>": The CHARACTER LARGE OBJECT data type -- Subclause 6.28, "<string value expression>": For values of type CHARACTER LARGE OBJECT -- Subclause 13.6, "Data type correspondences": Type correspondences for CHARACTER LARGE OBJECT for all supported languages -- The implicit casting among the fixed-length and variable-length character string types supported by subfeature E021-10 is extended to support the character large object type||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T041-02 ||CLOB data type -- Subclause 5.2, "<token> and <separator>": The <reserved word>s CHARACTER, CLOB, LARGE, and OBJECT -- Subclause 6.1, "<data type>": The CHARACTER LARGE OBJECT data type -- Subclause 6.28, "<string value expression>": For values of type CHARACTER LARGE OBJECT -- Subclause 13.6, "Data type correspondences": Type correspondences for CHARACTER LARGE OBJECT for all supported languages -- The implicit casting among the fixed-length and variable-length character string types supported by subfeature E021-10 is extended to support the character large object type ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T041-03|| POSITION, LENGTH, LOWER, TRIM, UPPER, and SUBSTRING functions for LOB data types -- Subclause 6.27, "<numeric value function>": The <position expression> for expressions of type BINARY LARGE OBJECT and CHARACTER LARGE OBJECT -- Subclause 6.27, "<numeric value function>": The <char length expression> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.27, "<numeric value function>": The <octet length expression> for expressions of type BINARY LARGE OBJECT and CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <fold> function for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <trim function> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <blob trim function> -- Subclause 6.29, "<string value function>": The <character substring function> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <blob substring function> ||<#FFFF00>Yes*||<#FFFF00>Yes*||Not standard SQL syntax. See notes on features E021-04, E021-06, E021-09 and E021-11||
+ ||T041-03 ||POSITION, LENGTH, LOWER, TRIM, UPPER, and SUBSTRING functions for LOB data types -- Subclause 6.27, "<numeric value function>": The <position expression> for expressions of type BINARY LARGE OBJECT and CHARACTER LARGE OBJECT -- Subclause 6.27, "<numeric value function>": The <char length expression> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.27, "<numeric value function>": The <octet length expression> for expressions of type BINARY LARGE OBJECT and CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <fold> function for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <trim function> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <blob trim function> -- Subclause 6.29, "<string value function>": The <character substring function> for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.29, "<string value function>": The <blob substring function> ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Not standard SQL syntax. See notes on features E021-04, E021-06, E021-09 and E021-11 ||
- ||T041-04|| Concatenation of LOB data types -- Subclause 6.28, "<string value expression>": The <concatenation> expression for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.28, "<string value expression>": The <blob concatenation> expression||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T041-04 ||Concatenation of LOB data types -- Subclause 6.28, "<string value expression>": The <concatenation> expression for expressions of type CHARACTER LARGE OBJECT -- Subclause 6.28, "<string value expression>": The <blob concatenation> expression ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T041-05|| LOB locator: non-holdable -- Subclause 13.3, "<externally-invoked procedure>": <locator indication> -- Subclause 14.14, "<free locator statement>"||<#FF0000>No||<#FF0000>No|| ||
+ ||T041-05 ||LOB locator: non-holdable -- Subclause 13.3, "<externally-invoked procedure>": <locator indication> -- Subclause 14.14, "<free locator statement>" ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T042'''||'''Extended LOB data type support'''||<#FFFF00>Partial||<#FFFF00>Partial||CAST and string value functions implemented. No comparision or ordering. ||
+ ||'''T042''' ||'''Extended LOB data type support''' ||<#FFFF00>Partial ||<#FFFF00>Partial ||CAST and string value functions implemented. No comparision or ordering. ||
- ||'''T051'''||'''Row types'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T051''' ||'''Row types''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T052'''||'''MAX and MIN for row types'''||N/A||<#FF0000>No|| ||
+ ||'''T052''' ||'''MAX and MIN for row types''' ||N/A ||<#FF0000>No || ||
- ||'''T053'''||'''Explicit aliases for all-fields reference'''||N/A||<#FF0000>No|| ||
+ ||'''T053''' ||'''Explicit aliases for all-fields reference''' ||N/A ||<#FF0000>No || ||
- ||'''T061'''||'''UCS support'''||N/A||<#FF0000>No|| ||
+ ||'''T061''' ||'''UCS support''' ||N/A ||<#FF0000>No || ||
- ||'''T071'''||'''BIGINT data type'''||N/A||<#00FF00>Yes|| ||
+ ||'''T071''' ||'''BIGINT data type''' ||N/A ||<#00FF00>Yes || ||
- ||'''T111'''||'''Updatable joins, unions, and columns'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T111''' ||'''Updatable joins, unions, and columns''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T121'''||'''WITH (excluding RECURSIVE) in query expression'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T121''' ||'''WITH (excluding RECURSIVE) in query expression''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T122'''||'''WITH (excluding RECURSIVE) in subquery'''||N/A||<#FF0000>No|| ||
+ ||'''T122''' ||'''WITH (excluding RECURSIVE) in subquery''' ||N/A ||<#FF0000>No || ||
- ||'''T131'''||'''Recursive query'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T131''' ||'''Recursive query''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T132'''||'''Recursive query in subquery'''||N/A||<#FF0000>No|| ||
+ ||'''T132''' ||'''Recursive query in subquery''' ||N/A ||<#FF0000>No || ||
- ||'''T141'''||'''SIMILAR predicate'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T141''' ||'''SIMILAR predicate''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T151'''||'''DISTINCT predicate'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T151''' ||'''DISTINCT predicate''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T152'''||'''DISTINCT predicate with negation'''||N/A||<#FF0000>No || ||
+ ||'''T152''' ||'''DISTINCT predicate with negation''' ||N/A ||<#FF0000>No || ||
- ||'''T171'''||'''LIKE clause in table definition'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T171''' ||'''LIKE clause in table definition''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T172'''||'''AS subquery clause in table definition'''||N/A||<#FF0000>No|| ||
+ ||'''T172''' ||'''AS subquery clause in table definition''' ||N/A ||<#FF0000>No || ||
- ||'''T173'''||'''Extended LIKE clause in table definition'''||N/A||<#FF0000>No|| ||
+ ||'''T173''' ||'''Extended LIKE clause in table definition''' ||N/A ||<#FF0000>No || ||
- ||'''T174'''||'''Identity columns'''||N/A||<#FFFF00>Yes* || MAXVALUE and CYCLE not supported. Deviation from standard: A comma (",") is required before INCREMENT. ||
+ ||'''T174''' ||'''Identity columns''' ||N/A ||<#FFFF00>Yes* ||MAXVALUE and CYCLE not supported. Deviation from standard: A comma (",") is required before INCREMENT. ||
- ||'''T175'''||'''Generated columns'''||N/A||<#00FF00>Yes || Since 10.5 ||
+ ||'''T175''' ||'''Generated columns''' ||N/A ||<#00FF00>Yes ||Since 10.5 ||
- ||'''T176'''||'''Sequence generator support'''||N/A||<#FFFF00>Yes* || ALTER SEQUENCE not supported. Only one NEXT VALUE FOR clause per sequence in each statement ([[https://issues.apache.org/jira/browse/DERBY-4513|DERBY-4513]]). ||
+ ||'''T176''' ||'''Sequence generator support''' ||N/A ||<#FFFF00>Yes* ||ALTER SEQUENCE not supported. Only one NEXT VALUE FOR clause per sequence in each statement ([[https://issues.apache.org/jira/browse/DERBY-4513|DERBY-4513]]). ||
- ||'''T191'''||'''Referential action RESTRICT'''|| || || ||
+ ||'''T191''' ||'''Referential action RESTRICT''' || || || ||
- ||'''T201'''||'''Comparable data types for referential constraints'''|| || || ||
+ ||'''T201''' ||'''Comparable data types for referential constraints''' || || || ||
- ||'''T211'''||'''Basic trigger capability'''||<#FFFF00>Yes*||<#FFFF00>Yes*||10.2 and earlier: Need to specify non standard MODE DB2SQL (see [[http://issues.apache.org/jira/browse/DERBY-1770|DERBY-1770]]). Also, the REFERENCING part is not quite compliant. The optional ROW keyword is not allowed, and NEW TABLE/OLD TABLE must be written NEW_TABLE/OLD_TABLE||
+ ||'''T211''' ||'''Basic trigger capability''' ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||10.2 and earlier: Need to specify non standard MODE DB2SQL (see [[http://issues.apache.org/jira/browse/DERBY-1770|DERBY-1770]]). Also, the REFERENCING part is not quite compliant. The optional ROW keyword is not allowed, and NEW TABLE/OLD TABLE must be written NEW_TABLE/OLD_TABLE ||
- ||T211-01||Triggers activated on UPDATE, INSERT, or DELETE of one base table.||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T211-01 ||Triggers activated on UPDATE, INSERT, or DELETE of one base table. ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T211-02||BEFORE triggers||<#FFFF00>Yes*||<#FFFF00>Yes*||Need to specify non-standard ON CASCADE BEFORE. Before triggers cannot have INSERT, UPDATE or DELETE statements as their action.||
+ ||T211-02 ||BEFORE triggers ||<#FFFF00>Yes* ||<#FFFF00>Yes* ||Need to specify non-standard ON CASCADE BEFORE. Before triggers cannot have INSERT, UPDATE or DELETE statements as their action. ||
- ||T211-03||AFTER triggers||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T211-03 ||AFTER triggers ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T211-04||FOR EACH ROW triggers||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||T211-04 ||FOR EACH ROW triggers ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||T211-05||Ability to specify a search condition that shall be True before the trigger is invoked.||<#FF0000>No||<#FF0000>No|| ||
+ ||T211-05 ||Ability to specify a search condition that shall be True before the trigger is invoked. ||<#FF0000>No ||<#FF0000>No || ||
- ||T211-06||Support for run-time rules for the interaction of triggers and constraints.|| || || ||
+ ||T211-06 ||Support for run-time rules for the interaction of triggers and constraints. || || || ||
- ||T211-07||TRIGGER privilege||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)|| ||
+ ||T211-07 ||TRIGGER privilege ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||T211-08||Multiple triggers for the same event are executed in the order in which they were created in the catalog.||<#00FF00>Yes||<#00FF00>Yes||I think....||
+ ||T211-08 ||Multiple triggers for the same event are executed in the order in which they were created in the catalog. ||<#00FF00>Yes ||<#00FF00>Yes ||I think.... ||
- ||'''T212'''||'''Enhanced trigger capability'''|| || || ||
+ ||'''T212''' ||'''Enhanced trigger capability''' || || || ||
- ||'''T231'''||'''Sensitive cursors'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T231''' ||'''Sensitive cursors''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T241'''||'''START TRANSACTION statement'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T241''' ||'''START TRANSACTION statement''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T251'''||'''SET TRANSACTION statement: LOCAL option'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T251''' ||'''SET TRANSACTION statement: LOCAL option''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T261'''||'''Chained transactions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T261''' ||'''Chained transactions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T271'''||'''Savepoints'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''T271''' ||'''Savepoints''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''T272'''||'''Enhanced savepoint management'''||N/A||<#FF0000>No|| ||
+ ||'''T272''' ||'''Enhanced savepoint management''' ||N/A ||<#FF0000>No || ||
- ||'''T281'''||'''SELECT privilege with column granularity'''||<#00FF00>Yes (10.2)||<#00FF00>Yes (10.2)|| ||
+ ||'''T281''' ||'''SELECT privilege with column granularity''' ||<#00FF00>Yes (10.2) ||<#00FF00>Yes (10.2) || ||
- ||'''T301'''||'''Functional dependencies'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T301''' ||'''Functional dependencies''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T312'''||'''OVERLAY function'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T312''' ||'''OVERLAY function''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T322'''||'''Overloading of SQL-invoked functions and procedures'''|| || || ||
+ ||'''T322''' ||'''Overloading of SQL-invoked functions and procedures''' || || || ||
- ||'''T323'''||'''Explicit security for external routines'''|| || || ||
+ ||'''T323''' ||'''Explicit security for external routines''' || || || ||
- ||'''T324'''||'''Explicit security for SQL routines'''||N/A||<#FF0000>No|| ||
+ ||'''T324''' ||'''Explicit security for SQL routines''' ||N/A ||<#FF0000>No || ||
- ||'''T325'''||'''Qualified SQL parameter references'''||N/A||<#FF0000>No|| ||
+ ||'''T325''' ||'''Qualified SQL parameter references''' ||N/A ||<#FF0000>No || ||
- ||'''T326'''||'''Table functions'''||N/A||<#FFFF00>Partial|| ||
+ ||'''T326''' ||'''Table functions''' ||N/A ||<#FFFF00>Partial || ||
- ||'''T331'''||'''Basic roles'''||<#FFFF00>Partial||<#FFFF00>Partial|| ||
+ ||'''T331''' ||'''Basic roles''' ||<#FFFF00>Partial ||<#FFFF00>Partial || ||
- ||'''T332'''||'''Extended roles'''||<#FFFF00>Partial||<#FFFF00>Partial|| Only CURRENT_ROLE ||
+ ||'''T332''' ||'''Extended roles''' ||<#FFFF00>Partial ||<#FFFF00>Partial ||Only CURRENT_ROLE ||
- ||'''T351'''||'''Bracketed SQL comments (/*...*/ comments)'''||<#00FF00>Yes||<#00FF00>Yes|| Ready for release 10.4 ||
+ ||'''T351''' ||'''Bracketed SQL comments (/*...*/ comments)''' ||<#00FF00>Yes ||<#00FF00>Yes ||Ready for release 10.4 ||
- ||'''T431'''||'''Extended grouping capabilities'''|| ||<#FFFF00>Partial|| Partial support for GROUP BY ROLLUP since 10.6 ||
+ ||'''T431''' ||'''Extended grouping capabilities''' || ||<#FFFF00>Partial ||Partial support for GROUP BY ROLLUP since 10.6 ||
- ||'''T432'''||'''Nested and concatenated GROUPING SETS'''||N/A|| || ||
+ ||'''T432''' ||'''Nested and concatenated GROUPING SETS''' ||N/A || || ||
- ||'''T433'''||'''Multiargument GROUPING function'''||N/A|| || ||
+ ||'''T433''' ||'''Multiargument GROUPING function''' ||N/A || || ||
- ||'''T434'''||'''GROUP BY DISINCT'''||N/A|| || ||
+ ||'''T434''' ||'''GROUP BY DISTINCT''' ||N/A || || ||
- ||'''T441'''||'''ABS and MOD functions'''||<#00FF00>Yes||<#00FF00>Yes|| ||
+ ||'''T441''' ||'''ABS and MOD functions''' ||<#00FF00>Yes ||<#00FF00>Yes || ||
- ||'''T461'''||'''Symmetric BETWEEN predicate'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T461''' ||'''Symmetric BETWEEN predicate''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T471'''||'''Result sets return value'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T471''' ||'''Result sets return value''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T491'''||'''LATERAL derived table'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T491''' ||'''LATERAL derived table''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T501'''||'''Enhanced EXISTS predicate'''||<#00FF00>Yes||<#00FF00>Yes|| Since 10.9 ||
+ ||'''T501''' ||'''Enhanced EXISTS predicate''' ||<#00FF00>Yes ||<#00FF00>Yes ||Since 10.9 ||
- ||'''T511'''||'''Transaction counts'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T511''' ||'''Transaction counts''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T541'''||'''Updatable table references'''||<#FF0000>No||N/A|| ||
+ ||'''T541''' ||'''Updatable table references''' ||<#FF0000>No ||N/A || ||
- ||'''T551'''||'''Optional key words for default syntax'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T551''' ||'''Optional key words for default syntax''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T561'''||'''Holdable locators'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T561''' ||'''Holdable locators''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T571'''||'''Array-returning external SQL-invoked functions'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T571''' ||'''Array-returning external SQL-invoked functions''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T572'''||'''Multiset-returning external SQL-invoked functions'''||N/A||<#FF0000>No|| ||
+ ||'''T572''' ||'''Multiset-returning external SQL-invoked functions''' ||N/A ||<#FF0000>No || ||
- ||'''T581'''||'''Regular expression substring function'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T581''' ||'''Regular expression substring function''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T591'''||'''UNIQUE constraints of possibly null columns'''||<#00FF00>Yes (10.4)||<#00FF00>Yes (10.4)|| ||
+ ||'''T591''' ||'''UNIQUE constraints of possibly null columns''' ||<#00FF00>Yes (10.4) ||<#00FF00>Yes (10.4) || ||
- ||'''T601'''||'''Local cursor references'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T601''' ||'''Local cursor references''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T611'''||'''Elementary OLAP operations'''||N/A||<#FFFF00>Partial|| Partial support for ROW_NUMBER since 10.4 ||
+ ||'''T611''' ||'''Elementary OLAP operations''' ||N/A ||<#FFFF00>Partial ||Partial support for ROW_NUMBER since 10.4 ||
- ||'''T612'''||'''Advanced OLAP operations'''||N/A||<#FF0000>No|| ||
+ ||'''T612''' ||'''Advanced OLAP operations''' ||N/A ||<#FF0000>No || ||
- ||'''T613'''||'''Sampling'''||N/A||<#FF0000>No|| ||
+ ||'''T613''' ||'''Sampling''' ||N/A ||<#FF0000>No || ||
- ||'''T621'''||'''Enhanced numeric functions'''||N/A||<#FF0000>No|| ||
+ ||'''T621''' ||'''Enhanced numeric functions''' ||N/A ||<#FF0000>No || ||
- ||'''T641'''||'''Multiple column assignment'''||N/A||<#FF0000>No|| ||
+ ||'''T641''' ||'''Multiple column assignment''' ||N/A ||<#FF0000>No || ||
- ||'''T651'''||'''SQL-schema statements in SQL routines'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T651''' ||'''SQL-schema statements in SQL routines''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T652'''||'''SQL-dynamic statements in SQL routines'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T652''' ||'''SQL-dynamic statements in SQL routines''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T653'''||'''SQL-schema statements in external routines'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T653''' ||'''SQL-schema statements in external routines''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T654'''||'''SQL-dynamic statements in external routines'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T654''' ||'''SQL-dynamic statements in external routines''' ||<#FF0000>No ||<#FF0000>No || ||
- ||'''T655'''||'''Cyclically dependent routines'''||<#FF0000>No||<#FF0000>No|| ||
+ ||'''T655''' ||'''Cyclically dependent routines''' ||<#FF0000>No ||<#FF0000>No || ||