free46


テーブルを作成 特定のデータベースに接続していない状態において
Wednesday,July,3,2013
データsadachika sadachi sada

MySQL> show databases;
Database
information_schema
books
goods
mysql
performance_schema
personal
sadachika
sadachika_books         
sadachika_cp932db
sadachika_cp932db2
sadachika_eucjpdb
sadachika_eucjpdb02test
sakila
salesdb
sampledb040
test
world

○現在接続されているデーターベース
MySQL> select database();
database()
NULL                   *どこにも接続されてないみたい

○テーブルを作成 特定のデータベースに接続していない状態において
mysql> create table sadachika_books.sadachi_personal(sada_id int, sada_name varchar(20));  *カラム名sada_idのINT型 カラム名sada_nameのVARCHAR型
Query OK, 0 rows affected (0.09 sec)
mysql> show tables from sadachika_books;
sada_goods
sada_personal    
sadachi_personal    *追加されたね
sadachika_magazine
sadachika_novel

○データベースsadachika_books内には、以下2つのファイルが作成された。
sadachi_personal.frm
sadachi_personal.ibd

○サクラエディターでデータベースsadachika_books内のdb.optを開いてみると以下の記載があった
default-character-set=utf8
default-collation=utf8_general_ci

○特定のデーターベース「sadachika_books」に接続します。接続しているデータベースの中にテーブルを作成します。
mysql> use sadachika_books;
mysql> create table sadachi_goods(sada_id int, sada_name varchar(20), sada_price int);   *カラム名(sada_id)のINT型 カラム名(sada_name)のVARCHAR型 カラム名(sada_price)のINT型
Query OK, 0 rows affected (0.03 sec)

○テーブルを表示する
mysql> show tables from sadachika_books;
sada_goods
sada_personal
sadachi_doods      *追加されたね
sadachi_personal    
sadachika_magazine
sadachika_novel

○データを格納する
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('2013','2013','2013');                    *数字のテスト ただシングルクォーテーションだから文字として記録されるんだろうと思う
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('2013 ','2013 ','2013 ');                 *後ろに半角スペース
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values(' 2013 ',' 2013 ',' 2013 ');              *前後に半角スペース
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('201306','201306','201306');              *2013の検索でかかるかテスト 結果はかからない
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('2013 6 ','2013 6 ','2013 6');            ERROR       *半角スペースを間に入れて数字を入力してみた
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('abc','abc','abc');                       ERROR       *ノーマルに入力した
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('abc ','abc ','abc ');                    ERROR       *後ろに半角スペースを入力
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values(' abc ',' abc ',' abc ');                 ERROR       *前後に半角スペースを挿入
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('sadachika','sadachika','sadachika');     ERROR       *小文字のアルファベット
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('SADACHIKA','SADACHIKA','SADACHIKA');     ERROR       *大文字のアルファベット
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('SADACHIKA ','SADACHIKA ','SADACHIKA ');  ERROR       *後ろに半角スペースを入力
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('定近','定近','定近');                    ERROR       *漢字を入力してみる
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('定近 ','定近 ','定近 ');                 ERROR       *後ろに半角スペースを入力
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values(' 定近 ',' 定近 ',' 定近 ');              ERROR       *前後に半角スペースを入力してみる

mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('175','175','175');
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values('0753 ','0753 ','0753 ');
mysql> insert into sadachi_goods(sada_id, sada_name, sada_price) values(' 1759 ',' 1759 ',' 1739 ');              *前後に半角スペースを入力してみる
insert into sadachi_goods(sada_id, sada_name, sada_price) values('01','abc','02');                                *ノーマルに入力した
insert into sadachi_goods(sada_id, sada_name, sada_price) values('01','abc','abc');ERROR
insert into sadachi_goods(sada_id, sada_name, sada_price) values('abc','abc','02');ERROR
insert into sadachi_goods(sada_id, sada_name, sada_price) values('01','定近','02');

mysql> insert into sadachi_goods(sada_id, sada_name) values('01','abc');                  
mysql> insert into sadachi_goods(sada_id, sada_name) values('02','サダチカ');
mysql> insert into sadachi_goods(sada_id, sada_name) values('サダチカ','03');                                    ERROR
mysql> insert into sadachi_goods(sada_id, sada_name) values('04','定近');

○テーブルの中身の表示 
mysql> select * from sadachi_goods;
sada_id    sada_neme    sada_price
   2013    2013               2013
   2013    2013               2013
   2013     2013              2013      *前後に半角スペース
 201306    201306           201306
    175    175                 175
    753    0753                753      *ゼロが反映されない項目ありvalues('0753 ','0753 ','0753 ');
   1759     1759              1759      *前後に半角スペースを入力してみる
      1    abc                   2
      1    定近                  2
      1    abc                NULL      *入力は2項目sadachi_goods(sada_id, sada_name) values('01','abc');
      2    サダチカ           NULL      *入力は2項目sadachi_goods(sada_id, sada_name) values('02','サダチカ');
      4    定近               NULL      *入力は2項目sadachi_goods(sada_id, sada_name) values('04','定近');

○データを格納する
        mysql> create table sadachika_books.sadachi_personal(sada_id int, sada_name varchar(20));

mysql> insert into sadachi_personal(sada_id, sada_name) values('abc','abc');ERROR                *ノーマルに入力した
mysql> insert into sadachi_personal(sada_id, sada_name) values('abc ','abc ');ERROR              *後ろに半角スペースを入力
mysql> insert into sadachi_personal(sada_id, sada_name) values(' abc ',' abc ');ERROR            *前後に半角スペースを挿入
mysql> insert into sadachi_personal(sada_id, sada_name) values('sadachika','sadachika');         ERROR*小文字のアルファベット
mysql> insert into sadachi_personal(sada_id, sada_name) values('SADACHIKA','SADACHIKA');         ERROR*大文字のアルファベット
mysql> insert into sadachi_personal(sada_id, sada_name) values('SADACHIKA ','SADACHIKA ');       ERROR*後ろに半角スペースを入力
mysql> insert into sadachi_personal(sada_id, sada_name) values('定近','定近');                   ERROR          *漢字を入力してみる
mysql> insert into sadachi_personal(sada_id, sada_name) values('定近 ','定近 ');                 ERROR          *後ろに半角スペースを入力
mysql> insert into sadachi_personal(sada_id, sada_name) values(' 定近 ',' 定近 ');               ERROR          *前後に半角スペースを入力してみる
mysql> insert into sadachi_personal(sada_id, sada_name) values('2013','2013');                   *数字のテスト ただシングルクォーテーションだから文字として記録されるんだろうと思う
mysql> insert into sadachi_personal(sada_id, sada_name) values('2013 ','2013 ');                 *後ろに半角スペース
mysql> insert into sadachi_personal(sada_id, sada_name) values(' 2013 ',' 2013 ');               *前後に半角スペース
mysql> insert into sadachi_personal(sada_id, sada_name) values('201306','201306');               *2013の検索でかかるかテスト 結果はかからない
mysql> insert into sadachi_personal(sada_id, sada_name) values('2013 6 ','2013 6 ');             ERROR          *半角スペースを間に入れて数字を入力してみた

mysql> insert into sadachi_personal(sada_id, sada_name) values('01','abc');    
mysql> insert into sadachi_personal(sada_id, sada_name) values('02','サダチカ');
mysql> insert into sadachi_personal(sada_id, sada_name) values('サダチカ','03');                 ERROR
mysql> insert into sadachi_personal(sada_id, sada_name) values('04','定近');

○テーブルの中身の表示 
mysql> select * from sadachi_personal;
sada_id    sada_name
   2013    2013
   2013    2013
   2013     2013
 201306    201306
      1    abc
      2    サダチカ
      4    定近


○テーブル一覧 カレントデータベースに含まれるテーブル一覧を取得する場合は単に「SHOW TABLES;」
SHOW TABLES;
SHOW TABLES FROM db_name;
SHOW TABLES FROM sadachika_books;
Tables_in_sadachika_books
sada_goods
sada_personal
sadachi_goods
sadachi_personal
sadachika_magazine
sadachika_novel

         わからない
         公式 SHOW TABLES LIKE 'pattern';                        *patternカラム名
         SHOW TABLES LIKE 'sada_id';                        *?
         公式 SHOW TABLES FROM db_name LIKE 'pattern';           *?db_nameデータベース
         SHOW TABLES FROM sadachika_books LIKE 'sada_id';

○作成したテーブル(sadachi_goods)の定義を確認してみる
mysql> show create table sadachi_goods\G
*********** 1. row **************
       Table: sadachi_goods
Create Table: CREATE TABLE 'sadachi_goods'(
 'sada_id' int(11) DEFAULT NULL,                 *カムラの名前sada_id、INT型
 'sada_name' varchar(20) DEFAULT NULL,           *カムラの名前sada_name、VARCHAR型
 'sada_price' int(11) DEFAULT NULL               *カムラの名前sada_price、INT型
) ENGINE=InnoDB DEFAULT CHARSET=utf8         *デフォルトでcp932になるみたい 指定する場合は、文字セットと照合順序を指定してデータベース(フォルダ)を作成
1 row in set (0.61 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 table status\G
公式SHOW TABLE STATUS LIKE 'pattern';
    SHOW TABLE STATUS LIKE 'sada_goods';
    SHOW TABLE STATUS LIKE 'sada_goods'\G
公式SHOW TABLE STATUS FROM db_name LIKE 'pattern';
         SHOW TABLE STATUS FROM sadachika_books LIKE 'sada_goods';
         SHOW TABLE STATUS FROM sadachika_books LIKE 'sada_goods'\G

**************** 1.row **********************
           Name: sada_goods
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-06-26 22:40:41
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:

**************** 2.row **********************
           Name: sada_personal
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-06-26 22:22:15
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:
**************** 3.row **********************
           Name: sadachi_goods
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 9                  *データーを入力したカウントみたい
 Avg_row_length: 1820
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-07-03 09:44:37
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:

**************** 4.row **********************
           Name: sadachi_personal
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 7                 *データーを入力したカウントみたい
 Avg_row_length: 2340
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-07-03 09:38:33
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:
**************** 5.row **********************
           Name: sadachika_magazine
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-06-24 03:21:35
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:
**************** 6.row **********************
           Name: sadachika_novel
         Engine: MyISAM                 *mysql> create table sadachika_novel(sada_id int) engine=MyISAM;   *INT型 MyISAMと入力
        Version: 10
     Row_format: Fixed
           Rows: 0
 Avg_row_length: 0
    Data_length: 0
Max_data_length: 1970324836974591
   Index_length: 1024
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2013-06-24 02:33:14
    Update_time: 2013-06-24 02:33:14
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:
6 rows in set (0.00 sec)

○カラムに関する情報の取得
SHOW COLUMNS FROM tbl_name                    *tbl_nameテーブルネーム
SHOW COLUMNS FROM sada_goods;
mysql> show columns from sadachi_goods;
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL
sada_name     varchar(20)  YES        NULL
sada_price    int(11)      YES        NULL

mysql> show columns from sadachi_personal;
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL
sada_name     varchar(20)  YES        NULL

SHOW COLUMNS FROM tbl_name FROM db_name       *db_nameデータベースネイム
SHOW COLUMNS FROM sadachi_goods FROM sadachika_books;
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL
sada_name     varchar(20)  YES        NULL
sada_price    int(11)      YES        NULL

SHOW COLUMNS FROM sadachi_personal FROM sadachika_books;
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL
sada_name     varchar(20)  YES        NULL

SHOW COLUMNS FROM tbl_name LIKE 'pattern'     *patternカラム名
SHOW COLUMNS FROM sadachi_goods LIKE 'sada_id';
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL

SHOW COLUMNS FROM sadachi_goods LIKE 'sada_name';
Field         Type         Null  Key  Default  Extra
sada_name     varchar(20)  YES        NULL

SHOW COLUMNS FROM sadachi_goods LIKE 'sada_price';
Field         Type         Null  Key  Default  Extra
sada_price    int(11)      YES        NULL

SHOW COLUMNS FROM tbl_name FROM db_name LIKE 'pattern'
SHOW COLUMNS FROM sadachi_goods FROM sadachika_books LIKE 'sada_id';
Field         Type         Null  Key  Default  Extra
sada_id       int(11)      YES        NULL

SHOW COLUMNS FROM sadachi_goods FROM sadachika_books LIKE 'sada_name';
Field         Type         Null  Key  Default  Extra
sada_name     varchar(20)  YES        NULL

SHOW COLUMNS FROM sadachi_goods FROM sadachika_books LIKE 'sada_price';
Field         Type         Null  Key  Default  Extra
sada_price    int(11)      YES        NULL
                    
○作成したテーブル(sadachi_goods)の定義を確認してみる
mysql> show create table sadachi_goods\G
*********** 1. row **************
       Table: sadachi_goods
Create Table: CREATE TABLE 'sadachi_goode'(
 'sada_id' int(11) DEFAULT NULL,              *カムラの名前sada_id、INT型
 'sada_name' varchar(20) DEFAULT NULL,        *カムラの名前sada_name、VARCHAR型
 'sada_price' int(11) DEFAULT NULL,           *カムラの名前sada_price、INT型
) ENGINE=InnoDB DEFAULT CHARSET=utf8          *デフォルトでcp932になるみたい 指定する場合は、文字セットと照合順序を指定してデータベース(フォルダ)を作成
1 row in set (0.61 sec)                       *例えば、こんな感じ、忘れないために書いておくmysql> create database sadachika_cp932db character set cp932; 
         *↑デフォルトはInnoDBだが、指定する場合のためにメモを残しておく InnoDBを変えたりするには、mysql> create table sadachika_novel(sada_id int) engine=MyISAM;   *INT型 MyISAMと入力

○作成したテーブル(sadachi_novel)の定義を確認してみる
mysql> show create table sadachi_personal\G
*********** 1. row **************
       Table: sadachi_personal
Create Table: CREATE TABLE 'sadachi_personal'(
 'sada_id' int(11) DEFAULT NULL,              *カムラの名前sada_id、INT型
 'sada_name' varchar(20) DEFAULT NULL,        *カムラの名前sada_name、VARCHAR型
) ENGINE=MyISAM DEFAULT CHARSET=utf8          *デフォルトでcp932になるみたい 指定する場合は、文字セットと照合順序を指定してデータベース(フォルダ)を作成
1 row in set (0.61 sec)                       *例えば、こんな感じ、忘れないために書いておくmysql> create database sadachika_cp932db character set cp932; 
         *↑デフォルトはInnoDBだが、指定する場合のためにメモを残しておく InnoDBを変えたりするには、mysql> create table sadachika_novel(sada_id int) engine=MyISAM;   *INT型 MyISAMと入力


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

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

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