Appendices
Appendix A: CQL Keywords
CQL distinguishes between reserved and non-reserved 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 raison d’être 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.
| Keyword | Reserved? | 
|---|---|
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | no | 
| 
 | yes | 
| 
 | yes | 
| 
 | no | 
Appendix B: CQL Reserved Types
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.
| type | 
|---|
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
Appendix C: Dropping Compact Storage
Starting version 4.0, Thrift and COMPACT STORAGE is no longer supported.
ALTER … DROP COMPACT STORAGE statement makes Compact Tables
CQL-compatible, exposing internal structure of Thrift/Compact Tables:
- 
CQL-created Compact Tables that have no clustering columns, will expose an additional clustering column column1withUTF8Type.
- 
CQL-created Compact Tables that had no regular columns, will expose a regular column valuewithBytesType.
- 
For CQL-Created Compact Tables, all columns originally defined as regularwill be comestatic
- 
CQL-created Compact Tables that have clustering but have no regular columns will have an empty value column (of EmptyType)
- 
SuperColumn Tables (can only be created through Thrift) will expose a compact value map with an empty name. 
- 
Thrift-created Compact Tables will have types corresponding to their Thrift definition. 




 
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                    