alter table(フィールドを追加)
alter table(フィールド名と型を修正)
alter table(フィールドの型を修正)
alter table(フィールドを削除)
show fields(テーブルのフィールドを調べる)
update(フィールドの値をセット)
auto_increment(フィールドに連番を与える)
データベースはいくつかのテーブルを持つことができます。テーブルを作成するには、useでデータベースを選択して、create tableの構文を使います。
テーブルにフィールドを追加するには、以下の構文を使います。
alter table tableName add フィールド名 型 [ 制約 ];
使用例
alter table bookstbl add ctg vchar(255);
フィールド名を変更するには、以下の構文を使います。
alter table tableName change name1 name2 type;
name1 | 以前のフィールド名 |
name2 | 新しいフィールド名 |
type | フィールド名の新しい型 |
使用例
alter table kobutsu add index ind1(serial);
フィールドの型を変更するには、以下の構文を使います。
alter table tableName modify フィールド名 新しい型;
使用例
atlter table bookstbl modify ctg carchar(100);
フィールドを削除するには、以下の構文を使います。
alter table tableName drop field_name;
テーブルのフィールドを調べるには、useでデータベースを選択した後に、show fields from table_nameの構文を使います。
show fields from table_name;
mysql> show fields from user;
+------------------------+--------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------------+--------------------------+------+-----+---------+-------+
| Host | char(60) | NO | PRI | | |
| User | char(16) | NO | PRI | | |
| Password | char(41) | NO | | | |
| Select_priv | enum('N','Y') | NO | | N | |
| Insert_priv | enum('N','Y') | NO | | N | |
| Update_priv | enum('N','Y') | NO | | N | |
| Delete_priv | enum('N','Y') | NO | | N | |
| Create_priv | enum('N','Y') | NO | | N | |
...
| max_user_connections | int(11) unsigned | NO | | 0 | |
| plugin | char(64) | YES | | | |
| authentication_string | text | YES | | NULL | |
+------------------------+--------------------------+------+-----+---------+-------+
42 rows in set (0.02 sec)
mysql>
フィールドに値をセット(変更)するには、以下の構文を使います。
update tableName set field_name=value [ where節 ];
where節を省略するとすべてのレコードのフィールドが書き換えられます。
フィールドに自動的に連番を与えるにはauto_increment属性を使います。auto_increment属性を使うには、あらかじめインデックスを作っておく必要があります。
連番をセットするためのフィールドを作ります。これは通常のフィールドを作る方法と同じです。以下の例では、bookstblというテーブルに連番をセットするためのserialという名前のフィールドをint型で作成します。
alter table bookstbl add serial int;
auto_increment属性を使うためにテーブルにインデックスを作成します。以下の例では、STEP-1で追加したフィールド(serila)をキーとする、ind1というインデックスを作成します。
alter table bookstbl add index ind1(serial);
連番をセットするフィールドにauto_increment属性を追加します。以下の例では、STEP-1で追加したフィールド(serila)にauto_increment属性を追加します。
alter table bookstbl modify serial int auto_increment;
auto_increment属性を使うためにはインデックスが必要で、インデックスを作るにはキーとなるフィールドが必要になるため、3回の操作が必要になります。