blob: 167e1a2238d9ad083e0b28f4bc4c970d72088ffd [file] [log] [blame]
---
layout: docpage
title: "Documentation"
is_homepage: false
is_sphinx_doc: true
doc-parent: "The Cassandra Query Language (CQL)"
doc-title: "Appendices"
doc-header-links: '
<link rel="top" title="Apache Cassandra Documentation v4.0-rc1" href="../index.html"/>
<link rel="up" title="The Cassandra Query Language (CQL)" href="index.html"/>
<link rel="next" title="Changes" href="changes.html"/>
<link rel="prev" title="Triggers" href="triggers.html"/>
'
doc-search-path: "../search.html"
extra-footer: '
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: "",
VERSION: "",
COLLAPSE_INDEX: false,
FILE_SUFFIX: ".html",
HAS_SOURCE: false,
SOURCELINK_SUFFIX: ".txt"
};
</script>
'
---
<div class="container-fluid">
<div class="row">
<div class="col-md-3">
<div class="doc-navigation">
<div class="doc-menu" role="navigation">
<div class="navbar-header">
<button type="button" class="pull-left navbar-toggle" data-toggle="collapse" data-target=".sidebar-navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse sidebar-navbar-collapse">
<form id="doc-search-form" class="navbar-form" action="../search.html" method="get" role="search">
<div class="form-group">
<input type="text" size="30" class="form-control input-sm" name="q" placeholder="Search docs">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</div>
</form>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../getting_started/index.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../new/index.html">New Features in Apache Cassandra 4.0</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/index.html">Architecture</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">The Cassandra Query Language (CQL)</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="definitions.html">Definitions</a></li>
<li class="toctree-l2"><a class="reference internal" href="types.html">Data Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="ddl.html">Data Definition</a></li>
<li class="toctree-l2"><a class="reference internal" href="dml.html">Data Manipulation</a></li>
<li class="toctree-l2"><a class="reference internal" href="indexes.html">Secondary Indexes</a></li>
<li class="toctree-l2"><a class="reference internal" href="mvs.html">Materialized Views</a></li>
<li class="toctree-l2"><a class="reference internal" href="security.html">Security</a></li>
<li class="toctree-l2"><a class="reference internal" href="functions.html">Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="operators.html">Arithmetic Operators</a></li>
<li class="toctree-l2"><a class="reference internal" href="json.html">JSON Support</a></li>
<li class="toctree-l2"><a class="reference internal" href="triggers.html">Triggers</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Appendices</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#appendix-a-cql-keywords">Appendix A: CQL Keywords</a></li>
<li class="toctree-l3"><a class="reference internal" href="#appendix-b-cql-reserved-types">Appendix B: CQL Reserved Types</a></li>
<li class="toctree-l3"><a class="reference internal" href="#appendix-c-dropping-compact-storage">Appendix C: Dropping Compact Storage</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="changes.html">Changes</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../data_modeling/index.html">Data Modeling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../configuration/index.html">Configuring Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../operating/index.html">Operating Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Cassandra Tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/index.html">Contributing to Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../faq/index.html">Frequently Asked Questions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../plugins/index.html">Third-Party Plugins</a></li>
<li class="toctree-l1"><a class="reference internal" href="../bugs.html">Reporting Bugs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contactus.html">Contact us</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
<div class="col-md-8">
<div class="content doc-content">
<div class="content-container">
<div class="section" id="appendices">
<h1>Appendices<a class="headerlink" href="#appendices" title="Permalink to this headline"></a></h1>
<div class="section" id="appendix-a-cql-keywords">
<span id="appendix-a"></span><h2>Appendix A: CQL Keywords<a class="headerlink" href="#appendix-a-cql-keywords" title="Permalink to this headline"></a></h2>
<p>CQL distinguishes between <em>reserved</em> and <em>non-reserved</em> keywords.
Reserved keywords cannot be used as identifier, they are truly reserved
for the language (but one can enclose a reserved keyword by
double-quotes to use it as an identifier). Non-reserved keywords however
only have a specific meaning in certain context but can used as
identifier otherwise. The only <em>raison d’être</em> of these non-reserved
keywords is convenience: some keyword are non-reserved when it was
always easy for the parser to decide whether they were used as keywords
or not.</p>
<table border="1" class="docutils">
<colgroup>
<col width="61%" />
<col width="39%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Keyword</th>
<th class="head">Reserved?</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ADD</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">AGGREGATE</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ALL</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">ALLOW</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ALTER</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">AND</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">APPLY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">AS</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ASC</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">ASCII</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">AUTHORIZE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">BATCH</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">BEGIN</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">BIGINT</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">BLOB</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">BOOLEAN</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">BY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">CALLED</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">CLUSTERING</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">COLUMNFAMILY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">COMPACT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">CONTAINS</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">COUNT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">COUNTER</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">CREATE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">CUSTOM</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">DATE</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">DECIMAL</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">DELETE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">DESC</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">DESCRIBE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">DISTINCT</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">DOUBLE</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">DROP</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ENTRIES</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">EXECUTE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">EXISTS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">FILTERING</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">FINALFUNC</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">FLOAT</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">FROM</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">FROZEN</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">FULL</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">FUNCTION</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">FUNCTIONS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">GRANT</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">IF</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">IN</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">INDEX</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">INET</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">INFINITY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">INITCOND</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">INPUT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">INSERT</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">INT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">INTO</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">JSON</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">KEY</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">KEYS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">KEYSPACE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">KEYSPACES</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">LANGUAGE</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">LIMIT</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">LIST</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">LOGIN</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">MAP</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">MODIFY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">NAN</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">NOLOGIN</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">NORECURSIVE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">NOSUPERUSER</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">NOT</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">NULL</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">OF</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ON</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">OPTIONS</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">OR</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">ORDER</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">PASSWORD</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">PERMISSION</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">PERMISSIONS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">PRIMARY</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">RENAME</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">REPLACE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">RETURNS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">REVOKE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">ROLE</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">ROLES</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">SCHEMA</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">SELECT</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">SET</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">SFUNC</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">SMALLINT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">STATIC</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">STORAGE</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">STYPE</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">SUPERUSER</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TABLE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TEXT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TIME</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TIMESTAMP</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TIMEUUID</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TINYINT</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TO</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TOKEN</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TRIGGER</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TRUNCATE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TTL</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">TUPLE</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">TYPE</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">UNLOGGED</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">UPDATE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">USE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">USER</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">USERS</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">USING</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">UUID</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">VALUES</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">VARCHAR</span></code></td>
<td>no</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">VARINT</span></code></td>
<td>no</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">WHERE</span></code></td>
<td>yes</td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">WITH</span></code></td>
<td>yes</td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">WRITETIME</span></code></td>
<td>no</td>
</tr>
</tbody>
</table>
</div>
<div class="section" id="appendix-b-cql-reserved-types">
<h2>Appendix B: CQL Reserved Types<a class="headerlink" href="#appendix-b-cql-reserved-types" title="Permalink to this headline"></a></h2>
<p>The following type names are not currently used by CQL, but are reserved
for potential future use. User-defined types may not use reserved type
names as their name.</p>
<table border="1" class="docutils">
<colgroup>
<col width="100%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">type</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">bitstring</span></code></td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">byte</span></code></td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">complex</span></code></td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">enum</span></code></td>
</tr>
<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">interval</span></code></td>
</tr>
<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">macaddr</span></code></td>
</tr>
</tbody>
</table>
</div>
<div class="section" id="appendix-c-dropping-compact-storage">
<h2>Appendix C: Dropping Compact Storage<a class="headerlink" href="#appendix-c-dropping-compact-storage" title="Permalink to this headline"></a></h2>
<p><code class="docutils literal notranslate"><span class="pre">ALTER</span> <span class="pre">...</span> <span class="pre">DROP</span> <span class="pre">COMPACT</span> <span class="pre">STORAGE</span></code> statement makes Compact Tables CQL-compatible,
exposing internal structure of Thrift/Compact Tables:</p>
<ul class="simple">
<li>CQL-created Compact Tables that have no clustering columns, will expose an
additional clustering column <code class="docutils literal notranslate"><span class="pre">column1</span></code> with <code class="docutils literal notranslate"><span class="pre">UTF8Type</span></code>.</li>
<li>CQL-created Compact Tables that had no regular columns, will expose a
regular column <code class="docutils literal notranslate"><span class="pre">value</span></code> with <code class="docutils literal notranslate"><span class="pre">BytesType</span></code>.</li>
<li>For CQL-Created Compact Tables, all columns originally defined as
<code class="docutils literal notranslate"><span class="pre">regular</span></code> will be come <code class="docutils literal notranslate"><span class="pre">static</span></code></li>
<li>CQL-created Compact Tables that have clustering but have no regular
columns will have an empty value column (of <code class="docutils literal notranslate"><span class="pre">EmptyType</span></code>)</li>
<li>SuperColumn Tables (can only be created through Thrift) will expose
a compact value map with an empty name.</li>
<li>Thrift-created Compact Tables will have types corresponding to their
Thrift definition.</li>
<li>If a row was written while a table was still compact but it has no live
cells due to later row or cell deletions, it may continue to be simply
left out of query results, as is the normal behavior for compact tables.
Rows written after a table is fully CQL-compatible, if they have no live
cells but a live primary key, may be present in query results with null values.</li>
</ul>
</div>
</div>
<div class="doc-prev-next-links" role="navigation" aria-label="footer navigation">
<a href="changes.html" class="btn btn-default pull-right " role="button" title="Changes" accesskey="n">Next <span class="glyphicon glyphicon-circle-arrow-right" aria-hidden="true"></span></a>
<a href="triggers.html" class="btn btn-default" role="button" title="Triggers" accesskey="p"><span class="glyphicon glyphicon-circle-arrow-left" aria-hidden="true"></span> Previous</a>
</div>
</div>
</div>
</div>
</div>
</div>