Synopsis

Use the USE statement to specify a default keyspace for the current client session. When a database object (such as table or type) name does not identify a keyspace, this default keyspace is used.

Syntax

Diagram

USEkeyspace_name

Grammar

use_keyspace ::= USE keyspace_name;

Where

  • keyspace_name must be an identifier that cannot be any reserved keyword and cannot contains whitespaces, or it has to be double-quoted.

Semantics

  • If the specified keyspace does not exist, an error is raised.
  • Any unqualified table or type name will use the current default keyspace (or raise an error if no keyspace is set).

Examples

Create and use keyspaces

ycqlsh> CREATE KEYSPACE example;
ycqlsh> CREATE KEYSPACE other_keyspace;
ycqlsh> USE example;

Create a table in the current keyspace

ycqlsh:example> CREATE TABLE test(id INT PRIMARY KEY);
ycqlsh:example> INSERT INTO test(id) VALUES (1);
ycqlsh:example> SELECT * FROM test;
 id
----
  1

Create a table in another keyspace

ycqlsh:example> CREATE TABLE other_keyspace.test(id INT PRIMARY KEY);
ycqlsh:example> INSERT INTO other_keyspace.test(id) VALUES (2);
ycqlsh:example> SELECT * FROM other_keyspace.test;
 id
----
  2

See also