📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

USE DATABASE



現在のセッションのデータベースを選択します。このステートメントを使用すると、別のデータベースを指定して切り替えることができます。このコマンドで現在のデータベースを設定すると、変更しない限り、セッションの終了までそのまま維持されます。

構文

USE <database_name>

重要な注意事項

場合によっては、USE <database> の実行が遅くなることがあります。たとえば、ユーザーが一部のテーブルのみの所有権を持っている場合、TiDB Cloud Lake はアクセス権を判断するためにメタデータをスキャンする必要があります。

USE <database> ステートメントのパフォーマンスを向上させるには、特にテーブル数が多いデータベースや権限が複雑なデータベースでは、データベースに対する USAGE 権限をロールに付与し、そのロールをユーザーに割り当てることができます。

-- Grant USAGE privilege on the database to a role GRANT USAGE ON <database_name>.* TO ROLE <role_name>; -- Assign the role to a user GRANT ROLE <role_name> TO <user_name>;

USAGE 権限を使用すると、ユーザーはデータベースに入ることができますが、テーブルの表示やアクセスの権限は付与されません。ユーザーがテーブルを表示またはクエリするには、SELECT や OWNERSHIP などの適切なテーブルレベルの権限が引き続き必要です。

例

-- Create two databases CREATE DATABASE database1; CREATE DATABASE database2; -- Select and use "database1" as the current database USE database1; -- Create a new table "table1" in "database1" CREATE TABLE table1 ( id INT, name VARCHAR(50) ); -- Insert data into "table1" INSERT INTO table1 (id, name) VALUES (1, 'John'); INSERT INTO table1 (id, name) VALUES (2, 'Alice'); -- Query all data from "table1" SELECT * FROM table1; -- Switch to "database2" as the current database USE database2; -- Create a new table "table2" in "database2" CREATE TABLE table2 ( id INT, city VARCHAR(50) ); -- Insert data into "table2" INSERT INTO table2 (id, city) VALUES (1, 'New York'); INSERT INTO table2 (id, city) VALUES (2, 'London'); -- Query all data from "table2" SELECT * FROM table2;

このページは役に立ちましたか?