テーブルの名前を変更する free59

Tuesday,July,9,2013

○○テーブルの名前を変更する
mysql> alter table sadachika_shop.sadachi_goods rename to sadachika_shop.sadachi_art;


○データベースを表示させる
show databases;
○データベースに接続する
USE sadachika_shop;
○テーブルを表示させる。
SHOW TABLES;
○テーブルの中身の表示 
mysql> select * from sadachika_shop.sadachi_goods;
sada_id sada_name
      1  えんぴつでっさん 
      2  もくたんでっさん 
      3  にほんが         
      4  油絵             
      5  アクリル画       
      6  版画             
      7  七宝             
      8  陶芸             
      8  彫刻            
      2  もくたんでっさん

○元テーブル(sadachi_goods)の定義を確認してみる
mysql> show create table sadachika_shop.sadachi_goods\G
*********** 1. row **************
       Table: sadachi_goods
Create Table: CREATE TABLE 'sadachi_goods'(
 'sada_id' int(11) DEFAULT NULL,                   *カムラの名前sada_id、   INT型 NULLを格納を許さない
 'sada_nane' varchar(10) DEFAULT NULL              *カムラの名前sada_price、INT型 NULLを格納を許可
 KEY 'sada_name' ('sada_name')                     *KEYのみの表示なんですけど?  ここのプライマリキー(重複するデータの格納を許さない)の設定がコピーできない。ユニークキーやインデックス設定もコピーできない。
) ENGINE=InnoDB DEFAULT CHARSET=utf8               *my.ini ファイルのデフォルトを参照
1 row in set (0.00 sec)                            *指定する場合のためにメモを残しておくmysql> create database sadachika_cp932db character set cp932; 
         *↑デフォルトはInnoDBだが、指定する場合のためにメモを残しておく  InnoDBを変えたりするには、mysql> create table sadachika_novel(sada_id int) engine=MyISAM;   *INT型  MyISAMと入力

○テーブルの構造を見る
mysql> show columns from sadachika_shop.sadachi_goods;          *columns(新聞など印刷物の)縦の段; 欄.                     
Field        Type         Null   Key    Default    Extra
sada_id      int(11)      NO            NULL                    *Key項目が     カラム名sada_id INT型(おそらく数字のみ入力可能)
sada_name    varchar(10)  YES    NUL    NULL                    *Key項目がNUL  カラム名sada_name VARCHAR型 文字によるインデックスを作成するんだな、INT型が数字だけしか使用できないから


○○テーブルの名前を変更する
mysql> alter table sadachika_shop.sadachi_goods rename to sadachika_shop.sadachi_art;


○データベースを表示させる
show databases;
○データベースに接続する
USE sadachika_shop;
○テーブルを表示させる。
SHOW TABLES;
Tables_in_sadachika_shop
sadachi_goods  → sadachi_art に変わった

○テーブルの中身の表示 
mysql> select * from sadachika_shop.sadachi_goods; ERROR

mysql> select * from sadachika_shop.sadachi_art;
sada_id sada_name
      1  えんぴつでっさん 
      2  もくたんでっさん 
      3  にほんが         
      4  油絵             
      5  アクリル画       
      6  版画             
      7  七宝             
      8  陶芸             
      8  彫刻            
      2  もくたんでっさん

○元テーブル(sadachi_art)の定義を確認してみる
mysql> show create table sadachika_shop.sadachi_art\G
*********** 1. row **************
       Table: sadachi_art
Create Table: CREATE TABLE 'sadachi_art'(
 'sada_id' int(11) DEFAULT NULL,                   *カムラの名前sada_id、   INT型 NULLを格納を許さない
 'sada_nane' varchar(10) DEFAULT NULL              *カムラの名前sada_price、INT型 NULLを格納を許可
 KEY 'sada_name' ('sada_name')                     *KEYのみの表示なんですけど?  ここのプライマリキー(重複するデータの格納を許さない)の設定がコピーできない。ユニークキーやインデックス設定もコピーできない。
) ENGINE=InnoDB DEFAULT CHARSET=utf8               *my.ini ファイルのデフォルトを参照
1 row in set (0.00 sec)                            *指定する場合のためにメモを残しておくmysql> create database sadachika_cp932db character set cp932; 
         *↑デフォルトはInnoDBだが、指定する場合のためにメモを残しておく  InnoDBを変えたりするには、mysql> create table sadachika_novel(sada_id int) engine=MyISAM;   *INT型  MyISAMと入力

○テーブルの構造を見る
mysql> show columns from sadachika_shop.sadachi_art;          *columns(新聞など印刷物の)縦の段; 欄.                     
Field        Type         Null   Key    Default    Extra
sada_id      int(11)      NO            NULL                    *Key項目が     カラム名sada_id INT型(おそらく数字のみ入力可能)
sada_name    varchar(10)  YES    NUL    NULL                    *Key項目がNUL  カラム名sada_name VARCHAR型 文字によるインデックスを作成するんだな、INT型が数字だけしか使用できないから



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

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

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