mirror of
https://github.com/lancedb/lancedb.git
synced 2026-10-12 23:02:28 +00:00
OSS docs now own the full usage content for features that only run against an Enterprise deployment, since the client interface itself lives here; Enterprise docs keep only the parts specific to its own behavior. Sophon's overlay for these five pages is dropped since the OSS versions are now the complete reference. SQL Reference is restructured to match an object-type SQL manual (DDL by object, then DML, then DQL, then Expressions) instead of the old flat, loosely-ordered page list, absorbing the SQL client-connection guide and FTS-via-SQL examples into it.
54 lines
1.6 KiB
Plaintext
54 lines
1.6 KiB
Plaintext
---
|
|
title: "Namespace"
|
|
sidebarTitle: "Namespace"
|
|
description: "CREATE SCHEMA and DROP SCHEMA — the SQL spelling of namespace DDL."
|
|
icon: folder-tree
|
|
keywords: ["namespace", "schema", "create schema", "drop schema", "sql"]
|
|
---
|
|
|
|
<Badge color="red">Enterprise</Badge> [SQL runs on a deployment.](/sql)
|
|
|
|
A [namespace](/management/namespace) is addressed in SQL as a `SCHEMA` -- the
|
|
standard's name for the same concept.
|
|
|
|
## CREATE SCHEMA {#create}
|
|
|
|
```sql
|
|
CREATE SCHEMA public
|
|
CREATE SCHEMA db1.ns1.ns2
|
|
CREATE SCHEMA IF NOT EXISTS `ns1$ns2`
|
|
```
|
|
|
|
A dotted path creates the whole chain: `db1.ns1.ns2` creates `ns2` inside
|
|
`ns1` inside `db1`, provided the parents already exist. A name containing the
|
|
namespace path delimiter itself is backtick-quoted, as in `` `ns1$ns2` `` above.
|
|
|
|
`IF NOT EXISTS` makes the statement a no-op rather than an error when the
|
|
namespace is already there.
|
|
|
|
## DROP SCHEMA {#drop}
|
|
|
|
```sql
|
|
DROP SCHEMA db1.public
|
|
DROP SCHEMA IF EXISTS `a$b`
|
|
DROP SCHEMA `a$b` RESTRICT
|
|
```
|
|
|
|
<Warning>
|
|
`CASCADE` is rejected: **"DROP SCHEMA CASCADE is not supported; drop the
|
|
objects inside first."** A namespace's tables, views and functions must be
|
|
dropped explicitly before the namespace itself can go. `RESTRICT` -- the
|
|
default -- states that requirement rather than changing it.
|
|
</Warning>
|
|
|
|
## What to read next {#next}
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="Namespace" icon="folder-tree" href="/management/namespace">
|
|
The SDK equivalent, and how a namespace fits the catalog hierarchy.
|
|
</Card>
|
|
<Card title="Table" icon="table" href="/sql/ddl/table">
|
|
Creating tables inside a namespace.
|
|
</Card>
|
|
</CardGroup>
|