Skip to content

本页尚未翻译

本页内容仍为英文原文,源自官方文档 management/index。中文翻译正在分批进行中。

Management ​

Create, list, and drop the objects in a catalog, from Python, TypeScript, or SQL.

Use the SDKs or SQL to manage catalog objects, including tables, namespaces and views. The tables below provide a quick reference to the available methods; each object's guide covers its setup and behavior.

Some long-running operations also provide a submission method that returns a job. See the operation's guide for how to track completion.

Management APIs ​

说明

SQL is available through the Enterprise Flight SQL endpoint. See SQL.

Namespaces ​

PythonTypeScriptSQL
createcreate_namespacecreateNamespace--
listlist_namespaceslistNamespaces--
describedescribe_namespacedescribeNamespace--
existsnamespace_exists----
dropdrop_namespacedropNamespace--

See Namespaces.

Tables ​

PythonTypeScriptSQL
createcreate_tablecreateTableCREATE TABLE
create emptycreate_table(schema=)createEmptyTableCREATE TABLE
openopen_tableopenTable--
listtable_names, list_tablestableNames, listTables--
existstable_exists----
renamerename_tablerenameTable--
cloneclone_tablecloneTable--
dropdrop_table, drop_table_asyncdropTable, dropTableAsyncDROP TABLE
drop alldrop_all_tablesdropAllTables--

See Tables for creating one and shaping its schema.

Materialized views ​

PythonTypeScriptSQL
createcreate_materialized_viewcreateMaterializedViewCREATE MATERIALIZED VIEW
openopen_materialized_viewopenMaterializedView--
listlist_materialized_viewslistMaterializedViewsSHOW MATERIALIZED VIEWS
refreshrefreshrefreshREFRESH MATERIALIZED VIEW
dropdrop_tabledropTableDROP TABLE

说明

Local list_materialized_views reads table schemas to find views. On Enterprise, it requests the server's view listing.

See Materialized views for creating one, and Refresh a materialized view for keeping it current.

Views ​

PythonTypeScriptSQL
createcreate_viewcreateViewCREATE VIEW
listlist_viewslistViews--
dropdrop_view, drop_view_asyncdropView, dropViewAsyncDROP VIEW

Enterprise Views exist only on an Enterprise cluster that enables them; the SDK methods send the view's SQL query to the deployment. See Views.

Functions ​

PythonTypeScriptSQL
createcreate_function, create_function_async--CREATE FUNCTION
getget_function--DESCRIBE FUNCTION
listlist_functions--SHOW FUNCTIONS
dropdrop_function--DROP FUNCTION

Enterprise A function runs on the server, and only on a deployment that enables functions, so there is no local form. The TypeScript SDK has no function methods; use Python or SQL. See Functions.

Jobs ​

PythonTypeScriptSQL
listlist_jobslistJobsSHOW JOBS
openopen_jobopenJob--
cancelcancel_jobcancelJob--
errorsjob.eventsjob.eventsSHOW ERRORS

See Job Framework.

Indexes ​

PythonTypeScriptSQL
createcreate_index, create_index_asynccreateIndex, createIndexAsyncCREATE INDEX
listlist_indiceslistIndices--
statsindex_statsindexStats--
dropdrop_indexdropIndexDROP INDEX

说明

SQL CREATE INDEX covers one column and takes no user-chosen name: the server names it. For a multi-column or named index, use the SDK.

Indexes are a performance decision rather than a structural one, so they are covered under Maintenance.

Work within a namespace ​

Most connection-level operations take a namespace_path (namespacePath) to act inside a namespace rather than at the database root:

python
db.table_names(namespace_path=["prod", "events"])
tbl = db.open_table("clicks", namespace_path=["prod", "events"])
typescript
await db.tableNames(["prod", "events"]);
const tbl = await db.openTable("clicks", ["prod", "events"]);
sql
SELECT * FROM `prod$events`.clicks

In SQL the path is written as a $-joined schema instead; see Namespace for why it isn't dotted.

Delete catalog objects ​

注意

drop_table removes the table and every version of it. Table versioning does not survive the table being dropped, and neither drop_database nor drop_all_tables asks for confirmation.

Dropping a view removes only the saved query. Dropping a materialized view removes stored rows, because a materialized view is a table.