ユーザー テーブルがあり、ユーザー構造が次のようになっているとします。
alter table user edit username varchar(20);mysql> +----------+---------------+------+-----+----------- +------+
| フィールド タイプ | デフォルト | +----------+------+------+-----+----------- +------+
| varchar(10) | はい | | パスワード (32) | | 作成時間 (10) | | はい | +----------+---------------+------+-----+----------- +------+
4 行セット (0.01 秒)
テーブルのフィールドの型を変更する
例
user テーブルのユーザー名の型を varchar(20) に変更します | |
---|---|
mysql> テーブルユーザーを変更 ユーザー名 varchar(20); | クエリは OK、影響を受ける行は 0 行あります (0.48 秒)レコード: 0 重複: 0 警告: 0 |
| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+ | | ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | +----------+---------------+------+-----+----------- +------+セット内の 4 行 (0.01 秒) |
基本的な文法テーブル ユーザーの変更 列 age int(3);
例説明
年齢としてフィールドを追加します。タイプは整数、長さは 3 ですカテゴリ詳しい説明mysql> alter table emp add column age int(3);
クエリ OK、影響を受ける行は 0 (0.40 秒)
レコード: 0 重複: 0 警告: 0mysql> desc user;
+----------+---------------+------+-----+----------- +------+
| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+
| ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | | 年齢 | はい | +----------+---------------+------+-----+----------- +------+
5 行セット (0.00 秒)
フィールドを追加するときにフィールドの順序を制御します
フィールドの追加方法を学びました。注意深く実験してみて、毎回最後に追加されることがわかった場合、最初のフィールドまたはポインティング フィールドの後に追加するにはどうすればよいでしょうか?
ALTER TABLE テーブル名 ADD フィールド名 フィールドタイプ AFTER フィールド名; 基本構文 例 ALTER TABLE user A DD 電子メール VARCHAR( 60) AFTER createip; 説明例 userテーブルで、createipの後にメールとしてフィールドを追加します。タイプはvarchar、長さは60です 詳細な説明 カテゴリ
例 基本構文 ALTER TABLE テーブル名 ADD フィールド名 フィールドタイプ; 例の説明 ALTER TABLE user ADD id INT(10) FIRST; user テーブルの先頭に追加 1 つのフィールドは id、型は int、長さは 10 ALTER TABLE user ADD email VARCHAR(60) AFTER createip;
クエリ OK、影響を受ける行は 0 (0.40 秒)
レコード: 0 重複: 0 警告: 0mysql>説明ユーザー;
+----------+---------------+------+-----+----------- +------+
|フィールド |タイプ |ヌル |キー |デフォルト |おまけ |
+----------+---------------+------+-----+----------- +------+
|ユーザー名 | varchar(20) |はい | | NULL | |
|パスワード | varchar(32) |はい | | NULL | |
|作成時間 | int(10) |はい | | NULL | |
|作成する | int(10) |はい | | NULL | |
|メール | varchar(60) |はい | | NULL | |
|年齢 | int(3) |はい | | NULL | |
+----------+---------------+------+-----+----------- +------+
セット内の 6 行 (0.00 秒)删除表フィールド
类别 详细解表示 基本语法 テーブル表名ドロップ列フィールド名前; 例 テーブル ユーザー ドロップ列 age を変更する; 例说明 ユーザー表中删除字段年齢 カテゴリ詳細な説明mysql> テーブルユーザーの列の年齢を変更します;
クエリは OK、影響を受ける行は 0 行あります (0.27 秒)
レコード: 0 重複: 0 警告: 0mysql> desc user;
+----------+---------------+------+-----+----------- +------+
| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+
| ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | | varchar(60) | はい | +----------+---------------+------+-----+----------- +------+
セット内の 5 行 (0.00 秒)
テーブルフィールドの名前変更
テーブルテーブル名の変更フィールド元の名前フィールド新しい名前フィールドタイプ 基本構文 例 alter table user change email em varchar(60); 例の説明 user テーブルで、フィールドの email フィールドに em という名前を付けます 詳細な例:
mysql> alter table user change email em varchar(60);
クエリ OK、影響を受ける行は 0 (0.38 秒)
レコード: 0 重複: 0 警告: 0desc user;
テーブルフィールドを追加するときに順序を調整する方法はすでに学習しました。次に、別の変更または修正によって順序がどのように調整されるかを見てみましょう。
+----------+---------------+------+-----+----------- +------+
| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+
| ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | | varchar(60) | はい | +----------+---------------+------+-----+----------- +------+
5 行セット (0.00 秒)
テーブルフィールドの順序を変更します
前のフィールドの追加および変更ステートメント (追加/変更/変更) では、最後にオプションの first|after を追加できます。最初に を使って小さな実験をしてみましょう。
modify を使用して順序を調整します
mysql> alter table user edit em varchar(60) first;クエリは OK、影響を受ける行は 0 (0.41 秒)
レコード: 0 重複: 0 警告: 0mysql> desc user;+----------+---------------+------+-----+----------- +------+| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+
| varchar(60) | はい | | ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | +----------+---------------+------+-----+----------- +------+
5 行セット (0.00 秒)テーブル名の変更
カテゴリ 詳しい説明 基本構文 alter table old table name rename new table name; 例 テーブルユーザーの名前を変更し、新しい _user を変更します 例の説明 ユーザーテーブル名を new_user に変更します mysql> alter table user rename new_user;
クエリは OK、影響を受ける行は 0 (0.35 秒)mysql> desc new_user;
+----------+---------------+------+-----+----------- +------+
| フィールド タイプ | デフォルト | +----------+---------------+------+-----+----------- +------+
| varchar(60) | はい | | ユーザー名 (20) | はい | | パスワード (32) | | 作成時間 (10) | | はい | +----------+---------------+------+-----+----------- +------+
5 行セット (0.00 秒)
次のセクション
なし