DEFAULT関数 free66

Monday,July,15,2013
デフォルト関数はテーブルを作るときに設定します。
default '入力がありません'
default 0

DEFAULT(col_name)
results 成果,成績


○特定のデータベース内のテーブル 
SHOW TABLES FROM sadachika_shop;


○テーブルを作る デフォルト設定を施す
mysql> create table sadachika_shop.sadachi_results (sada_id int, sada_name varchar(10) default '入力がありません', sada_total int default 0);
                                                    *カラム名sada_id INT型, カラム名sada_name VARCHAR型 default '入力がありません', カラム名sada_total INT型 default 0 

○テーブルの構造を見る
mysql> show columns from sadachika_shop.sadachi_results; 
Field          Type         Null    Key    Default    Extra
sada_id        int(11)      YES            NULL                          *Key項目が
sada_name      varchar(10)  YES            入力がありません              *Default'入力がありません'
sada_total     int(11)      YES            0                             *Default 0

○カラムの構造を変更する
カラムNull YES Key, → not null primary key                                               ↓重複を許さない(primary key)○○カラム名の変更、データ型の変更                                          ↓INT型 ↓データ無しを許さない     ↓not nullだから使われることはないかなぁテスト。
mysql> alter table sadachika_shop.sadachi_results change sada_id sada_id int not null primary key; *名前だけ変更するのであってもあわせて型を入力する。
                                                  旧カラム名↑     ↑新しく変更するカラム名(sada_id)
○テーブルの構造を見る
mysql> show columns from sadachika_shop.sadachi_results; 
Field          Type         Null    Key    Default    Extra
sada_id        int(11)      NO      PRI    NULL                          *Null項目 not null, Key項目 PRI(primary key)
sada_name      varchar(10)  YES            入力がありません              
sada_total     int(11)      YES            0

○入力
mysql> insert into sadachika_shop.sadachi_results (sada_id, sada_name, sada_total) values(1, '定近', 50);
mysql> insert into sadachika_shop.sadachi_results (sada_id, sada_name, sada_total) values(2, '平山', 65);
mysql> insert into sadachika_shop.sadachi_results (sada_id, sada_name, sada_total) values(3, '橘高', 60);

○テーブルの中身の表示
mysql> select * from sadachika_shop.sadachi_results;
sada_id    sada_name    sada_total
      1    定近                 50
      2    平山                 65
      3    橘高                 60

○アップデート
                     ↓db名       ↓テーブル名    ↓カラム名   ↓更新するデータ        ↓古いデータ
mysql> update sadachika_shop.sadachi_results set sada_name = '佐藤' where sada_name = '橘高';
mysql> update sadachika_shop.sadachi_results set sada_id = 4 where sada_id = 3;
mysql> update sadachika_shop.sadachi_results set sada_id = 3 where sada_id = 2;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

○テーブルの中身の表示
mysql> select * from sadachika_shop.sadachi_results;
sada_id    sada_name    sada_total
      1    定近                 50
      3    平山                 65
      4    佐藤                 60    *橘高 → 佐藤

○○デフォルト関数                                ↓カラムをデフォルト値にする。
mysql> update sadachika_shop.sadachi_results set sada_total = default(sada_total);
mysql> update sadachika_shop.sadachi_results set sada_name = default(sada_name);

○テーブルの中身の表示
mysql> select * from sadachika_shop.sadachi_results;
sada_id    sada_name           sada_total
      1    入力がありません             0     *カラムのデフォルトになった
      3    入力がありません             0     *カラムのデフォルトになった 
      4    入力がありません             0     *カラムのデフォルトになった       

○primary keyを削除
mysql> alter table sadachika_shop.sadachi_results DROP PRIMARY KEY; 

○テーブルの構造を見る
mysql> show columns from sadachika_shop.sadachi_results; 
Field          Type         Null    Key    Default    Extra
sada_id        int(11)      NO             NULL                          *Key項目 PRI(primary key)が消えた
sada_name      varchar(10)  YES            入力がありません              
sada_total     int(11)      YES            0

○テーブルの中身の表示
mysql> select * from sadachika_shop.sadachi_results;
sada_id    sada_name           sada_total
      1    入力がありません             0     *カラムのデフォルトになった
      3    入力がありません             0     *カラムのデフォルトになった 
      4    入力がありません             0     *カラムのデフォルトになった  




* 参考にしたサイトは→ こちら です。

これは赤色の文字例です。

これは青色の文字例です。