このトピックでは、PolarDB-X 1.0の一般的なSQL文について説明します。
データベースの表示
データベースの表示:
ショーデータ;テーブルの作成、表示、および削除
- テーブルを作成します。
- 1つのテーブルを作成する:
table single_tbl ( id int, 名前varchar(30) 、 主キー (id) ); - id:
Create table multi_db_single_tbl () などの特定の列をパーティション分割するためにHASH関数を使用するテーブルを作成します。 id int auto_increment, 名前varchar(30) 、 主キー (id) ) dbpartition by hash(id);
- 1つのテーブルを作成する:
- テーブルの作成に使用されるステートメントを表示します。
- 単一のテーブルの作成に使用されるステートメントを表示します。
SHOW create table single_tbl; - HASH関数がパーティション分割に使用されるテーブルの作成に使用されるステートメントを表示します。
SHOW create table multi_db_single_tbl;
- 単一のテーブルの作成に使用されるステートメントを表示します。
- テーブルを削除します。
- 1つのテーブルを削除する:
DROP table single_tbl; - パーティション分割にHASH関数が使用されているテーブルを削除します。
DROP table multi_db_single_tbl;
- 1つのテーブルを削除する:
- データベース内のすべてのテーブルを表示する:
SHOW tables;
列の追加と削除、およびデータ型の変更
- 列の追加:
ALTER TABLE multi_db_single_tbl column textcolテキストを追加します。 - 列を変更する:
ALTER TABLE multi_db_single_tbl Modify column textcol varchar(40); - 列を削除する:
ALTER TABLE multi_db_single_tbl DROP column textcol;
ローカルインデックスの作成、表示、削除
- 次の2つのステートメントのいずれかを実行して、ローカルインデックスを作成できます。
CREATE INDEX idx_name ON multi_db_single_tbl (name);ALTER TABLE multi_db_single_tbl ADD INDEX idx_name(name);
- ローカルインデックスの表示:
SHOW index FROM multi_db_single_tbl; - 次の2つのステートメントのいずれかを実行して、ローカルインデックスを削除できます。
DROP INDEX idx_name ON multi_db_single_tbl;ALTER TABLE multi_db_single_tbl DROPインデックスidx_name;
データの挿入、取得、変更、および削除
- テーブルにデータを挿入する:
Insert into multi_db_single_tbl (name) VALUES ('test_name'); INSERT INTO multi_db_single_tbl (name) VALUES ('test_name'); INSERT INTO multi_db_single_tbl (name) VALUES ('test_name') 、('test_namexx'); - テーブルからデータを取得する:
SELECT * from multi_db_single_tbl; - テーブル内のデータを変更する:
UPDATE multi_db_single_tbl set name='zzz' WHERE id in (100001,100002、100003,100004); - テーブルからデータを削除する:
Delete from multi_db_single_tbl WHERE id = 100002;
ユーザーの作成、承認、および削除
- ユーザーを作成する:
ユーザー 'username' @ 'host' を作成します。説明- username: 作成するアカウント。
- host: アカウントでのログインを許可するホスト。 アカウントがすべてのホストからデータベースにログインできるようにするには、このパラメーターをパーセント記号 (%) に設定します。
- password: アカウントのパスワード。
たとえば、次のコマンドを実行して、名前がdrdsuser、パスワードがDrds1234556のアカウントを作成できます。 アカウントはすべてのホストからデータベースにログインできます。
CREATE USER drdsuser @ '%' 'Drds123456'; - 特定のユーザーに特定のデータベースからテーブルを取得する権限を付与する:
GRANT privileges ON databasename.tablename to 'username' @ 'host' WITH GRANT OPTION;説明- privileges: SELECT、INSERT、UPDATEなど、アカウントに付与される操作権限。 アカウントにすべての権限を付与するには、このパラメーターをallに設定します。
- databasename: データベースの名前。 すべてのデータベースの操作権限をアカウントに付与するには、このパラメーターをアスタリスク (*) に設定します。
- tablename: テーブルの名前。 すべてのテーブルの操作権限をアカウントに付与するには、このパラメーターをアスタリスク (*) に設定します。
- username: 権限を付与するアカウント。
- host: アカウントでのログインを許可するホスト。 アカウントがすべてのホストからログオンできるようにするには、このパラメーターをパーセント記号 (%) に設定します。
- WITH GRANT OPTION: アカウントにGRANTコマンドを実行する権限を付与します。 このパラメーターはオプションです。
たとえば、次のコマンドを実行して、sample_dbデータベースおよびすべてのテーブルに対するすべての権限をdrdsuserアカウントに付与できます。 アカウントはすべてのホストからデータベースにログインできます。
すべてをsample_dbで承認します。 * TO drdsuser @ '%'; - 特定のユーザーの権限を照会します。
SHOW GRANTS FOR 'username' @ 'host' - 特定のユーザーを削除する:
DROP user 'username' @ 'host'