SQL:1999
≈ 3 min read
Names in other languages
No names in other languages are held for this entry yet.
Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.
SQL:19991 (also called SQL 3) was the fourth revision of the SQL database query language. It introduced many new features, many of which required clarifications in the subsequent SQL:2003. In the meanwhile SQL:1999 is deprecated.
SQL:1999 (also called SQL 3) was the fourth revision of the SQL database query language. It introduced many new features, many of which required clarifications in the subsequent SQL:2003. In the meanwhile SQL:1999 is deprecated. ==Summary== The ISO standard documents were published between 1999 and 2002 in several installments, the first one consisting of multiple parts. Unlike previous editions, the standard's name used a colon instead of a hyphen for consistency with the names of other ISO standards. The first installment of SQL:1999 had five parts: SQL/Framework ISO/IEC 9075-1:1999 SQL/Foundation ISO/IEC 9075-2:1999 SQL/CLI : an updated definition of the extension Call Level Interface, originally published in 19951, also known as CLI-95 ISO/IEC 9075-3:1999 SQL/PSM : an updated definition of the extension Persistent Stored Modules, originally published in 1996, also known as PSM-96 ISO/IEC 9075-4:1999 SQL/Bindings ISO/IEC 9075-5:1999 Three more parts, also considered part of SQL:1999 were published subsequently: SQL/MED Management of External Data (SQL:1999 part 9) ISO/IEC 9075-9:2001 SQL/OLB Object Language Bindings (SQL:1999 part 10) ISO/IEC 9075-10:2000 SQL/JRT SQL Routines and Types using the Java Programming Language (SQL:1999 part 13) ISO/IEC 9075-13:2002 ==New features== ====Boolean data types==== The SQL:1999 standard calls for a Boolean type. IBM Db2 supports Boolean values since around 11.1. Microsoft SQL Server supports storage for Booleans using "BIT" data type . MySQL interprets "BOOL" and "BOOLEAN" as a mapping for its native TINYINT(1) type. PostgreSQL provides a standard conforming Boolean type. Oracle Database has proper Boolean since Release 23. create type age as integer FINAL; create type salary as integer FINAL; creates two different and incompatible types. The SQL distinct types use name equivalence not structural equivalence like typedefs in C. It's still possible to perform compatible operations on (columns or data) of distinct types by using an explicit type CAST . Few SQL systems support these. IBM Db2 is one those supporting them. Oracle database did not support them as of 2012, recommending instead to emulate them by a one-place structured type. ===Common table expressions and recursive queries=== SQL:1999 added a WITH [RECURSIVE] construct allowing recursive queries, like transitive closure, to be specified in the query language itself; see common table expressions. ==References== ==Further reading==
Text derived from https://en.wikipedia.org/w/index.php?oldid=1340925281 under CC BY-SA 4.0; modifications have been made.