<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-585390631033442466</id><updated>2011-04-21T18:44:36.537-07:00</updated><title type='text'>sql</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sqlfacts.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sqlfacts.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>sj</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-585390631033442466.post-4349658532427483278</id><published>2007-04-22T04:45:00.000-07:00</published><updated>2007-04-22T04:47:17.753-07:00</updated><title type='text'>SQL keywords</title><content type='html'>&lt;h3&gt;&lt;span class="mw-headline"&gt;Data retrieval&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h3&gt;  &lt;p&gt;The most frequently used operation in transactional databases is the data retrieval operation. When restricted to data retrieval commands, SQL acts as a declarative language:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/code&gt; is used to retrieve zero or      more rows from one or more tables in a database. In most applications, &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/code&gt; is the most commonly used Data      Manipulation Language command. In specifying a &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/code&gt; query, the user specifies a      description of the desired result set, but they do &lt;i&gt;not&lt;/i&gt; specify what      physical operations must be executed to produce that result set.      Translating the query into an efficient query plan is left to the database      system, more specifically to the query optimizer. &lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;ul type="circle"&gt;&lt;li class="MsoNormal" style=""&gt;Commonly available       keywords related to &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/code&gt;       include: &lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;ul type="square"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;FROM&lt;/span&gt;&lt;/code&gt; is used to indicate from        which tables the data is to be taken, as well as how the tables &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;JOIN&lt;/span&gt;&lt;/code&gt; to each other.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/code&gt; is used to identify which        rows to be retrieved, or applied to &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;GROUP&lt;/span&gt;&lt;/code&gt;        &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BY&lt;/span&gt;&lt;/code&gt;. &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/code&gt; is evaluated before the &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;GROUP&lt;/span&gt;&lt;/code&gt; &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BY&lt;/span&gt;&lt;/code&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;GROUP BY&lt;/span&gt;&lt;/code&gt; is used to combine rows        with related values into elements of a smaller set of rows.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;HAVING&lt;/span&gt;&lt;/code&gt; is used to identify which        of the "combined rows" (combined rows are produced when the        query has a &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;GROUP&lt;/span&gt;&lt;/code&gt; &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BY&lt;/span&gt;&lt;/code&gt; keyword or when the &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/code&gt; part contains aggregates),        are to be retrieved. &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;HAVING&lt;/span&gt;&lt;/code&gt;        acts much like a &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/code&gt;,        but it operates on the results of the &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;GROUP&lt;/span&gt;&lt;/code&gt;        &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BY&lt;/span&gt;&lt;/code&gt; and hence can use        aggregate functions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ORDER BY&lt;/span&gt;&lt;/code&gt; is used to identify        which columns are used to sort the resulting data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;  &lt;p&gt;Data retrieval is very often combined with data projection; usually it isn't the verbatim data stored in primitive data types that a user is looking for or a query is written to serve. Often the data needs to be expressed differently from how it's stored. SQL allows a wide variety of formulas included in the &lt;i&gt;select list&lt;/i&gt; to &lt;i&gt;project&lt;/i&gt; data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span class="mw-headline"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;h3&gt;&lt;span class="mw-headline"&gt;Data manipulation&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h3&gt;  &lt;p&gt;First, there are the standard Data Manipulation Language (DML) elements. DML is the subset of the language used to add, update and delete data:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;INSERT&lt;/span&gt;&lt;/code&gt; is used to add zero or more      rows (formally tuples) to an existing table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;UPDATE&lt;/span&gt;&lt;/code&gt; is used to modify the values      of a set of existing table rows.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;MERGE&lt;/span&gt;&lt;/code&gt; is used to combine the data      of multiple tables. It is something of a combination of the &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;INSERT&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;UPDATE&lt;/span&gt;&lt;/code&gt; elements. It is defined in      the SQL:2003 standard; prior to that, some databases provided similar      functionality via different syntax, sometimes called an "upsert".&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;DELETE&lt;/span&gt;&lt;/code&gt; removes zero or more      existing rows from a table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span class="mw-headline"&gt;Transaction controls&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h3&gt;  &lt;p&gt;Transactions, if available, can be used to wrap around the DML operations:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BEGIN WORK&lt;/span&gt;&lt;/code&gt; (or &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;START TRANSACTION&lt;/span&gt;&lt;/code&gt;, depending on SQL      dialect) can be used to mark the start of a database transaction, which      either completes completely or not at all.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;COMMIT&lt;/span&gt;&lt;/code&gt; causes all data changes in a      transaction to be made permanent.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ROLLBACK&lt;/span&gt;&lt;/code&gt; causes all data changes      since the last &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;COMMIT&lt;/span&gt;&lt;/code&gt;      or &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ROLLBACK&lt;/span&gt;&lt;/code&gt; to be      discarded, so that the state of the data is "rolled back" to the      way it was prior to those changes being requested.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;COMMIT&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ROLLBACK&lt;/span&gt;&lt;/code&gt; interact with areas such as transaction control and locking. Strictly, both terminate any open transaction and release any locks held on data. In the absence of a &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;BEGIN WORK&lt;/span&gt;&lt;/code&gt; or similar statement, the semantics of SQL are implementation-dependent.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span class="mw-headline"&gt;Data definition&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h3&gt;  &lt;p&gt;The second group of keywords is the Data Definition Language (DDL). DDL allows the user to define new tables and associated elements. Most commercial SQL databases have proprietary extensions in their DDL, which allow control over nonstandard features of the database system. The most basic items of DDL are the &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;CREATE&lt;/span&gt;&lt;/code&gt;,&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ALTER&lt;/span&gt;&lt;/code&gt;,&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;RENAME&lt;/span&gt;&lt;/code&gt;,&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;TRUNCATE&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span style="font-size: 10pt;"&gt;DROP&lt;/span&gt;&lt;/code&gt; commands:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;CREATE&lt;/span&gt;&lt;/code&gt; causes an object (a table,      for example) to be created within the database.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;DROP&lt;/span&gt;&lt;/code&gt; causes an existing object      within the database to be deleted, usually irretrievably.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;TRUNCATE&lt;/span&gt;&lt;/code&gt; deletes all data from a      table (non-standard, but common SQL command).&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;code&gt;&lt;span style="font-size: 10pt;"&gt;ALTER&lt;/span&gt;&lt;/code&gt; command permits the user to      modify an existing object in various ways -- for example, adding a column      to an existing table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/585390631033442466-4349658532427483278?l=sqlfacts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sqlfacts.blogspot.com/feeds/4349658532427483278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=585390631033442466&amp;postID=4349658532427483278' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4349658532427483278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4349658532427483278'/><link rel='alternate' type='text/html' href='http://sqlfacts.blogspot.com/2007/04/sql-keywords.html' title='SQL keywords'/><author><name>sj</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-585390631033442466.post-4432526536042450490</id><published>2007-04-22T04:43:00.000-07:00</published><updated>2007-04-22T04:44:56.351-07:00</updated><title type='text'>Standardization</title><content type='html'>&lt;p&gt;SQL was adopted as a standard by ANSI (American National Standards Institute) in 1986 and ISO (International Organization for Standardization) in 1987. However, since the dissolution of the NIST data management standards program in 1996 there has been no certification for compliance with the SQL standard so vendors must be relied on to self-certify. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;The SQL standard has gone through a number of revisions:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="border: 1pt solid windowtext;" border="1" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Year&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Alias&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Comments&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;1986&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL-86&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL-87&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;First published by ANSI. Ratified by ISO in 1987.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;1989&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL-89&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;Minor revision.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;1992&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL-92&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;Major revision (ISO 9075).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;1999&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL:1999&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL3&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;Added regular expression matching, recursive queries,   triggers, non-scalar types and some object-oriented features. (The last two   are somewhat controversial and not yet widely supported.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;2003&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL:2003&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;Introduced XML-related features, &lt;i&gt;window functions&lt;/i&gt;,   standardized sequences and columns with auto-generated values (including   identity-columns).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;2006&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;SQL:2006&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0.75pt;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;ISO/IEC 9075-14:2006 defines ways in which SQL can be used   in conjunction with XML. It defines ways of importing and storing XML data in   an SQL database, manipulating it within the database and publishing both XML   and conventional SQL-data in XML form. In addition, it provides facilities   that permit applications to integrate into their SQL code the use of XQuery,   the XML Query Language published by the World Wide Web Consortium (W3C), to   concurrently access ordinary SQL-data and XML documents.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;The SQL standard is not freely available. SQL:2003 and SQL:2006 may be purchased from ISO or ANSI. A late draft of SQL:2003 is available as a zip archive from Whitemarsh Information Systems Corporation. The zip archive contains a number of PDF files that define the parts of the SQL:2003 specification.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/585390631033442466-4432526536042450490?l=sqlfacts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sqlfacts.blogspot.com/feeds/4432526536042450490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=585390631033442466&amp;postID=4432526536042450490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4432526536042450490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4432526536042450490'/><link rel='alternate' type='text/html' href='http://sqlfacts.blogspot.com/2007/04/standardization.html' title='Standardization'/><author><name>sj</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-585390631033442466.post-4452033053388570959</id><published>2007-04-22T04:42:00.002-07:00</published><updated>2007-04-22T04:43:38.364-07:00</updated><title type='text'>History</title><content type='html'>&lt;p&gt;An influential paper, &lt;i&gt;A Relational Model of Data for Large Shared Data Banks&lt;/i&gt;, by Dr. Edgar F. Codd, was published in June 1970 in the Association for Computing Machinery (ACM) journal, Communications of the ACM, although drafts of it were circulated internally within IBM in 1969. Codd's model became widely accepted as the definitive model for &lt;i&gt;relational&lt;/i&gt; database management systems (RDBMS or RDMS).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;During the 1970s, a group at IBM's San Jose research center developed a database system "System R" based upon Codd's model. &lt;b&gt;Structured English Query Language&lt;/b&gt; (&lt;i&gt;"SEQUEL"&lt;/i&gt;) was designed to manipulate and retrieve data stored in System R. The acronym &lt;i&gt;SEQUEL&lt;/i&gt; was later condensed to &lt;b&gt;SQL&lt;/b&gt; because the word 'SEQUEL' was held as a trademark by the Hawker Siddeley aircraft company of the UK. Although SQL was influenced by Codd's work, Donald D. Chamberlin and Raymond F. Boyce at IBM were the authors of the SEQUEL language design. Their concepts were published to increase interest in SQL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;The first non-commercial, relational, non-SQL database, Ingres, was developed in 1974 at U.C. Berkeley.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;In 1978, methodical testing commenced at customer test sites. Demonstrating both the usefulness and practicality of the system, this testing proved to be a success for IBM. As a result, IBM began to develop commercial products based on their System R prototype that implemented SQL, including the System/38 (announced in 1978 and commercially available in August 1979), SQL/DS (introduced in 1981), and DB2 (in 1983). &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;At the same time, Relational Software, Inc. (now Oracle Corporation) saw the potential of the concepts described by Chamberlin and Boyce and developed their own version of a RDBMS for the Navy, CIA and others. In the summer of 1979, Relational Software, Inc. introduced Oracle V2 (Version2) for VAX computers as the first commercially available implementation of SQL. &lt;i&gt;Oracle V2&lt;/i&gt; beat IBM's release of the System/38 to the market by a few weeks.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/585390631033442466-4452033053388570959?l=sqlfacts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sqlfacts.blogspot.com/feeds/4452033053388570959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=585390631033442466&amp;postID=4452033053388570959' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4452033053388570959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/4452033053388570959'/><link rel='alternate' type='text/html' href='http://sqlfacts.blogspot.com/2007/04/history.html' title='History'/><author><name>sj</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-585390631033442466.post-7868545873632106453</id><published>2007-04-22T04:42:00.001-07:00</published><updated>2007-04-22T04:42:46.346-07:00</updated><title type='text'>about</title><content type='html'>&lt;p&gt;&lt;b&gt;Structured Query Language&lt;/b&gt; (SQL) is the most popular computer language used to create, retrieve, update and delete data from relational database management systems. SQL has been standardized by both ANSI and ISO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;SQL&lt;/i&gt; is commonly spoken either as the names of the letters &lt;i&gt;ess-cue-el&lt;/i&gt; (IPA: &lt;span title="Pronunciation in IPA"&gt;&lt;span class="ipa"&gt;[ˈ&lt;/span&gt;&lt;span class="ipa"&gt;&lt;span style="font-family: &amp;quot;Lucida Sans Unicode&amp;quot;;"&gt;ɛ&lt;/span&gt;sˈkjuˈ&lt;/span&gt;&lt;span class="ipa"&gt;&lt;span style="font-family: &amp;quot;Lucida Sans Unicode&amp;quot;;"&gt;ɛ&lt;/span&gt;l]&lt;/span&gt;&lt;/span&gt;), or like the word &lt;i&gt;sequel&lt;/i&gt; (IPA: &lt;span title="Pronunciation in IPA"&gt;&lt;span class="ipa"&gt;[ˈsiːkwəl]&lt;/span&gt;&lt;/span&gt;). The official pronunciation of SQL according to ANSI is &lt;i&gt;ess-cue-el&lt;/i&gt;. However, each of the major database products (or projects) containing the letters &lt;i&gt;SQL&lt;/i&gt; has its own convention: MySQL is officially and commonly pronounced "&lt;i&gt;My Ess Cue El&lt;/i&gt;"; PostgreSQL is expediently pronounced &lt;i&gt;postgres&lt;/i&gt; (being the name of the predecessor to PostgreSQL); and Microsoft SQL Server is commonly spoken as &lt;i&gt;Microsoft-sequel-server&lt;/i&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/585390631033442466-7868545873632106453?l=sqlfacts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sqlfacts.blogspot.com/feeds/7868545873632106453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=585390631033442466&amp;postID=7868545873632106453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/7868545873632106453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/585390631033442466/posts/default/7868545873632106453'/><link rel='alternate' type='text/html' href='http://sqlfacts.blogspot.com/2007/04/about.html' title='about'/><author><name>sj</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
